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.
99 lines
3.3 KiB
Markdown
99 lines
3.3 KiB
Markdown
# Cleaning Up get-shit-done-cc
|
|
|
|
Use this procedure when you see a persistent `⬆ /msd-update` indicator in
|
|
your statusline even though `@golem15/msd-core` is already up to date. It
|
|
removes leftover files from the old `get-shit-done-cc` package that was
|
|
renamed to `@golem15/msd-core` in issue [#607](https://github.com/open-gsd/gsd-core/issues/607).
|
|
|
|
## Why this happens
|
|
|
|
When the package was renamed, its version counter reset — `get-shit-done-cc`
|
|
reached `1.42.x` while `@golem15/msd-core` started at `1.2.0`. If the old
|
|
package is still installed in any runtime config directory (e.g. `~/.gemini`),
|
|
its update checker writes a higher `latest` version into the shared update
|
|
cache (`~/.cache/msd/msd-update-check.json`), and older versions of the new
|
|
tooling accepted those foreign writes. The statusline then permanently shows
|
|
an upgrade that does not exist. The current installer detects and removes
|
|
these leftovers automatically, and the update cache is now per-package with a
|
|
`package_name` lineage field that readers validate — so a foreign package can
|
|
no longer poison it.
|
|
|
|
## Steps
|
|
|
|
### 1. Preview the cleanup (dry run)
|
|
|
|
Run the installer with `--dry-run` to see exactly what it would change without
|
|
touching anything:
|
|
|
|
```bash
|
|
npx -y --package=@golem15/msd-core@latest -- msd-core --claude --global --dry-run
|
|
```
|
|
|
|
The command prints the removal plan — each file path and the reason it would
|
|
be deleted — and lists any stale update-cache files it would clear, then exits
|
|
without making any modifications.
|
|
|
|
Swap `--claude` for the flag matching your runtime if you use a different one
|
|
(see the [runtime flags table](manual-update.md#runtime-flags)).
|
|
|
|
### 2. Apply the cleanup
|
|
|
|
Run the same installer without `--dry-run`:
|
|
|
|
```bash
|
|
npx -y --package=@golem15/msd-core@latest -- msd-core --claude --global
|
|
```
|
|
|
|
The installer:
|
|
|
|
- Detects leftover `get-shit-done-cc` artifacts across all runtime config
|
|
directories (`~/.claude`, `~/.gemini`, `~/.codex`, `~/.config/opencode`,
|
|
`~/.kilo`, and others).
|
|
- Removes orphaned hooks, commands, and any file that references the old
|
|
package name.
|
|
- Clears the stale shared update cache.
|
|
- Preserves user-owned artifacts such as `dev-preferences.md`, custom agents,
|
|
and any file not managed by MSD.
|
|
|
|
### 3. Manual fallback
|
|
|
|
If the installer cannot resolve `get-shit-done-cc` in your environment, or you
|
|
prefer to clean up by hand:
|
|
|
|
1. **Check each runtime config directory** for a `msd-core/` subtree left
|
|
by the old package:
|
|
|
|
```bash
|
|
ls ~/.claude/msd-core/
|
|
ls ~/.gemini/msd-core/
|
|
ls ~/.codex/msd-core/
|
|
ls ~/.config/opencode/msd-core/
|
|
ls ~/.kilo/msd-core/
|
|
```
|
|
|
|
Remove any directories found there that were written by `get-shit-done-cc`
|
|
(the new package installs under the same path, so only remove the directory
|
|
if you have not yet run the new installer for that runtime).
|
|
|
|
2. **Uninstall the old package** if it is still resolvable:
|
|
|
|
```bash
|
|
npx get-shit-done-cc --uninstall
|
|
```
|
|
|
|
3. **Delete the stale shared cache**:
|
|
|
|
```bash
|
|
rm -f ~/.cache/msd/msd-update-check.json
|
|
```
|
|
|
|
### 4. Verify
|
|
|
|
Open a new terminal session (or restart your AI runtime). The `⬆ /msd-update`
|
|
indicator should no longer appear in the statusline. You can confirm the
|
|
installed version with:
|
|
|
|
```bash
|
|
npx @golem15/msd-core@latest -- msd-core --version
|
|
```
|