Files
msd-core/docs/zh-CN/how-to/update-msd.md
Jakub Zych a9a7a328e6 refactor: hard-fork GSD -> MSD (Make Software Done)
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.
2026-10-06 01:47:40 +02:00

4.4 KiB
Raw Permalink Blame History

如何更新 MSD Core

将现有的 MSD Core 安装更新到最新版本,在确认前预览变更日志,并恢复可能被更新覆盖的本地自定义配置。

所需条件: 与 MSD 安装时相同的运行时环境。更新命令在后台重新运行安装程序,因此需要 Node.js 和 npx(与最初安装时的要求相同)。


标准更新流程

在 AI 运行时内,执行:

/msd-update

MSD 将执行以下操作:

  1. 检测已安装的版本和安装范围(全局或本地)。
  2. 通过 npm 检查 @golem15/msd-core 的最新版本。
  3. 获取变更日志,并显示您已安装版本与最新版本之间的变更内容。
  4. 在执行任何操作前请求确认。
  5. 将 MSD 管理目录中发现的用户添加文件备份至 msd-user-files-backup/。
  6. 运行安装程序(npx @golem15/msd-core@latest --<runtime> --<scope>)。
  7. 清除更新检查缓存,使状态栏指示器重置。
  8. 报告本地修改的 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。


相关内容