Files
msd-core/commands/msd/update.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

2.1 KiB

name, description, argument-hint, allowed-tools
name description argument-hint allowed-tools
msd:update Update MSD to latest version with changelog display [--sync | --reapply | --next | --rc]
Read
Write
Edit
Bash
Glob
Grep
AskUserQuestion
Check for MSD updates, install if available, and display what changed.

Routes to the update workflow which handles:

  • Version detection (local vs global installation)
  • npm version checking
  • Changelog fetching and display
  • User confirmation with clean install warning
  • Update execution and cache clearing
  • Restart reminder

<execution_context> @~/.claude/msd-core/workflows/update.md </execution_context>

- **--sync**: Sync managed MSD skills across runtime roots so multi-runtime users stay aligned after an update. Runs the sync-skills workflow (--from, --to, --dry-run, --apply flags supported). - **--reapply**: Reapply local modifications after a MSD update. Uses three-way comparison (pristine baseline, user-modified backup, newly installed version) to merge user customizations back. Runs the reapply-patches workflow. - **--next** (alias **--rc**): Target the `@next` RC dist-tag instead of `@latest` so you can install or refresh a release candidate (e.g. `1.4.0-rc.1`) through the normal update flow — scope/runtime detection, changelog preview, custom-file backup, and cache clearing all still apply. Omitting it keeps targeting `@latest` (no change). See ADR #660 for the RC channel. - **(no flag)**: Standard update — check for new version, show changelog, install. Parse the first token of $ARGUMENTS: - If it is `--sync`: strip the flag, execute the sync-skills workflow (passing remaining args for --from/--to/--dry-run/--apply). - If it is `--reapply`: strip the flag, execute the reapply-patches workflow. - Otherwise (including `--next` / `--rc`): execute the update workflow end-to-end, passing `$ARGUMENTS` through so the workflow's parse_update_channel step can select the release channel.

<execution_context_extended> @/.claude/msd-core/workflows/sync-skills.md @/.claude/msd-core/workflows/reapply-patches.md </execution_context_extended>