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.
4.4 KiB
如何更新 MSD Core
将现有的 MSD Core 安装更新到最新版本,在确认前预览变更日志,并恢复可能被更新覆盖的本地自定义配置。
所需条件: 与 MSD 安装时相同的运行时环境。更新命令在后台重新运行安装程序,因此需要 Node.js 和 npx(与最初安装时的要求相同)。
标准更新流程
在 AI 运行时内,执行:
/msd-update
MSD 将执行以下操作:
- 检测已安装的版本和安装范围(全局或本地)。
- 通过 npm 检查
@golem15/msd-core的最新版本。 - 获取变更日志,并显示您已安装版本与最新版本之间的变更内容。
- 在执行任何操作前请求确认。
- 将 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 # Update and sync skills
/msd-update --reapply # Update and reapply local patches
更新前查看变更日志
/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 不可用时
如果 npx @golem15/msd-core@latest 因 npm 中断、网络限制,或因您正在使用源代码仓库而失败,请使用 docs/manual-update.md 中的手动更新流程。该文档涵盖拉取最新提交、构建钩子分发包以及直接运行 node bin/install.js 的步骤。
如果您已是最新版本
/msd-update 会提前退出并显示确认消息——无需下载、无需安装、无需重启。
安装程序迁移
每个 MSD 版本可能包含安装程序迁移,用于重命名、移动或停用管理文件。迁移层会在写入新包内容之前自动运行。会影响您已修改文件的迁移操作将提示确认,而不是静默执行。有关完整设计和运行时配置合约注册表,请参阅 docs/installer-migrations.md。