← ClaudeAtlas

implementation-harness-upgradelisted

Use when a project already has an installed `.harness/` and the user wants to pull in newer harness changes shipped by this plugin — phrases like "upgrade the harness", "update my harness", "pull in the latest harness changes", "is my harness up to date", "/upgrade-harness". Reconciles the installed `.harness/` against the plugin's bundled reference: refreshes plugin-owned mechanism files and adds new `harness.env` knobs, REPORTING first and asking before every change, and NEVER touching the backlog, worklog, ledgers, or the user's config values. Commits AND PUSHES the result by default once applied — unless told otherwise this conversation or by the project's own CLAUDE.md, in which case it leaves the change uncommitted as before. Also ADOPTS legacy or hand-forked installs (no version marker, hand-maintained since install, or a pre-plugin hand-ported harness) — classifying each difference as plugin-newer vs local-bespoke vs conflict before anything is overwritten. Requires a harness already scaffolded (use i
RyanMKrol/claude-skills · ★ 0 · Data & Documents · score 73
Install: claude install-skill RyanMKrol/claude-skills
# Upgrade an installed harness to the bundled reference You are reconciling a project's **existing** `.harness/` against the version of the harness this plugin currently ships (`templates/`), so the project picks up new scripts, dashboard changes, docs, and new `harness.env` knobs **without losing the user's own data or edits**. Read this whole file, then execute the stages in order. **Two rules govern everything below (the user chose these):** 1. **Report, then apply on confirm.** Produce a full dry-run report first; mutate only after the user approves. 2. **Never auto-decide on a file or knob whose safety isn't provable.** A file byte-identical to the CURRENT reference is already current — skip it silently. A file byte-identical to a PAST released version (per `CHECKSUMS.jsonl`) is provably never locally edited — auto-upgrade it, no question asked. A missing `harness.env` knob is always safe to append (the action never touches an existing value) — add it directly, no question asked. For any OTHER difference — the file's hash matches nothing ever shipped, or a real edit — surface the delta (with the ledger's "expected change" note) and **ask the user how to handle it** — they have very likely made their own edits, and those must be respected. Do not overwrite on your own judgment when provenance is uncertain. ## 0. Locate the bundled reference, its version, and the ledger Resolve the plugin's `templates/` exactly as the create skill does (the env