Mechanical rename produced by scripts/msd-rename.cjs: gsd/Gsd/GSD -> msd/Msd/MSD across contents and paths, upstream package/repo coordinates -> @golem15/msd-core and golem15com/msd-core. Deep links into upstream history, sibling upstream packages, the GSD-2 import feature, CHANGELOG.md and .changeset/ are kept as-is. Hand edits on top: MSD block-letter banner and logos, LICENSE copyright line, package/plugin identity, regenerated lockfile, install-tree fixtures, derived registries and benchmark baseline; migration checksum baseline re-locked (MSD keeps its own install state, so no install had applied the old sums); sort-order and regex-escaped expectations in tests adjusted.
6.3 KiB
MSD Core をアップデートする方法
既存の MSD Core インストールを最新リリースに更新し、コミット前に変更履歴をプレビューし、アップデートによって上書きされるローカルカスタマイズを回復します。
必要なもの: MSD がインストールされているのと同じランタイム。アップデートコマンドは内部でインストーラを再実行するため、Node.js と npx が利用可能である必要があります(元のインストールと同じ要件)。
標準的なアップデート手順
AI ランタイム内から以下を実行します。
/msd-update
MSD は以下を実行します。
- インストール済みバージョンとインストールスコープ(グローバルまたはローカル)を検出する。
@golem15/msd-coreの最新リリースを npm で確認する。- 変更履歴を取得し、インストール済みバージョンと最新バージョンの差分を表示する。
- 何も触れる前に確認を求める。
- MSD 管理ディレクトリ内に見つかったユーザーが追加したファイルを
msd-user-files-backup/にバックアップする。 - インストーラを実行する(
npx @golem15/msd-core@latest --<runtime> --<scope>)。 - アップデートチェックキャッシュをクリアしてステータスラインのインジケーターをリセットする。
- ローカルで変更された MSD ファイルが
msd-local-patches/にバックアップされたかどうかを報告する。
アップデート後にランタイムを再起動して、新しいコマンドとエージェントを読み込んでください。
フラグ
| フラグ | 動作 |
|---|---|
--sync |
アップデート後に MSD レジストリからスキルを同期する |
--reapply |
アップデート後に msd-local-patches/ からローカルで変更された MSD ファイルをマージして戻す |
/msd-update --sync # アップデートしてスキルを同期する
/msd-update --reapply # アップデートしてローカルパッチを再適用する
アップデート前に変更履歴を確認する
/msd-update は確認を求める前に、インストール済みバージョンと最新バージョン間の変更履歴差分を常に表示します。GitHub を別途確認する必要はありません。出力は以下のようになります。
## MSD Update Available
Installed: 1.39.0
Latest: 1.41.0
### What's New
---
[changelog entries for 1.40.0 and 1.41.0]
---
Proceed with update? [Yes, update now / No, cancel]
変更履歴を取得できない場合(ネットワークアクセスなし、npm の障害)、アップデートは確認後も続行されます。変更履歴の利用可能性でブロックされることはありません。
ローカルカスタマイズの回復
MSD 管理ディレクトリ内に追加したファイル
MSD が所有するディレクトリ内にカスタムファイルを配置した場合(例:msd- プレフィックスのカスタムエージェント、commands/msd/ への追加ファイル)、インストーラはそれらを検出し、ディレクトリを削除する前に msd-user-files-backup/ にコピーします。アップデート後、そのバックアップ場所から手動で復元してください。
MSD 管理ディレクトリの外に配置したファイル(msd- プレフィックスのないカスタムエージェント、commands/msd/ 外のカスタムコマンド、CLAUDE.md ファイル、カスタムフック)はインストーラによって一切変更されません。
MSD がインストールしたファイルへの直接変更
MSD がインストールしたファイルを編集した場合(例:エージェントのシステムプロンプトの調整)、インストーラはマニフェストのハッシュ比較で変更を検出し、ファイルを msd-local-patches/ にバックアップしてから新しいバージョンで置き換えます。アップデート後:
/msd-update --reapply
これにより、新しくインストールされたファイルに msd-local-patches/ からの変更がマージして戻されます。
以前のアップデート後に --reapply をスキップしてパッチを今すぐ適用したい場合:
/msd-update --reapply
--reapply は新しいダウンロードをトリガーせずに単独で実行しても安全です。すでに最新バージョンであれば、MSD はインストールステップをスキップして直接パッチの再適用に進みます。
npm が利用できない場合
ネットワーク制限、npm の障害、またはソースリポジトリから作業しているため npx @golem15/msd-core@latest が失敗する場合は、docs/manual-update.md の手動アップデート手順を使用してください。そのドキュメントには、最新コミットの取得、フックの dist のビルド、node bin/install.js の直接実行が記載されています。
すでに最新バージョンの場合
/msd-update は確認メッセージとともに早期終了します。ダウンロード、インストール、再起動は不要です。
インストーラの移行
各 MSD リリースには、管理ファイルの名前変更、移動、廃止を行うインストーラ移行が含まれる場合があります。移行レイヤーは新しいパッケージペイロードが書き込まれる前に自動的に実行されます。変更したファイルに影響する移行はサイレントに実行されず、確認が求められます。設計の詳細とランタイム設定コントラクトレジストリについては、docs/installer-migrations.md を参照してください。