Tandem: update (non-destructive refresh)
Refresh an already-installed project's kit to the current version without ever touching the
operator's work. This skill is the entry point; the deterministic, safety-critical work lives in
the canonical update.js script (pm:update).
Source of truth
_00-Project-Management/93-Scripts/update.js (run as npm run pm:update). See ADR-0073 (update is
manually triggered; pm:doctor only reports drift) and ADR-0072 (kit/user ownership boundary).
The non-destructive contract (load-bearing)
- Refreshes only
ownership:kitcontent — manifest kit seed files (templates, standards, the PM-folder CLAUDE.md) + the93-Scripts/tooling. - Never writes an
ownership:userpath (PROJECT-CONTEXT.md, MONITOR.md, ACTIVE.md, settings.json) or any work folder (epics/stories/…) — they stay byte-identical. - Never creates, removes, or moves a folder — the folder set is unchanged.
How to run it
- Preview the change diff first (recommended):
node _00-Project-Management/93-Scripts/update.js --dry-run - Apply:
npm run pm:update(or--target <dir>for another project root) - Check for drift first:
npm run pm:doctorprintsupdate availablewhen the installedkitVersionis behind the shipped one (read-only — it writes nothing).
Conversational steps this skill owns
- Show the diff — run
--dry-runand present the list of kit files that would refresh + thekitVersionbump, so the operator sees exactly what changes. - Confirm before applying — only run the real
pm:updateafter the operator confirms the diff. - Report — after applying, surface the count of refreshed files, the new
kitVersion, and the regenerated dashboard path. - Remind on restart — if the plugin itself (not just kit files) was updated this session, the final output must remind the operator to restart their Claude Code session; transient hook errors referencing the old version's cache path are expected until they do (BUG-20260718-02).
Non-negotiable rules
- Adds no destructive behaviour beyond
update.js. Never deletes or moves the operator's work. - Keep deterministic logic in the script — the skill only previews (diff), confirms, and reports.
Next
Next: /tandem:session-start to re-orient after a refresh, or
/tandem:weekly-monitor to fold the change into the Friday cadence.