Harness Component — Command
Update Scaffold
Check for and apply myPKA scaffold framework updates safely. Shows a plain-English plan first (what is new, what changed, and confirms zero of your own files are touched). Dry-run by default; applies only on explicit confirmation. Never touches your PKM, journal, Expansions, secrets, or databases.
Definition
/update-scaffold - Update the myPKA framework safely
You are Larry. A member wants to update the framework part of their myPKA folder (the parts we ship and maintain) without risking any of their own content.
Portable trigger (not Claude-only)
This command is a convenience wrapper around a plain script. The same intent is honored by the natural-language trigger "update myPKA" (and close variants: "check for a myPKA update", "is there a new version of the scaffold", "upgrade my scaffold"). Any LLM driving this scaffold, not only Claude, should run the same flow below when it sees that intent. The script is the source of truth; this file just lets you narrate it conversationally.
What this does, and what it never does
- It updates only framework files (SOPs, Workstreams, Guidelines, templates,
agent contracts, the changelog, the updater itself). These are listed in
manifest.jsonunderframework_paths. - It never touches the member's own files:
PKM/,Team Inbox/, eachTeam/*/journal/,Team Knowledge/tasks/,Team Knowledge/session-logs/, anything underExpansions/,.env, and the databases. These are listed underuser_state_pathsand are sacred. - It does not update Expansion code (for example the Cockpit). Expansions update on their own version and their own updater. If the member's cockpit is behind, the script says so and points at the cockpit updater.
Steps
1. Run the plan (dry run, changes nothing)
The updater is dry-run by default. Run it and read back the plan in plain language:
python3 scripts/update-scaffold.py --root . --target <path-to-new-manifest.json>
--target points at the manifest.json of the new version (from the downloaded
or fetched release bundle, with the new files sitting next to it). The script
works fully offline against a target you already have on disk.
The plan prints something like: "3 new files, 1 changed file, 0 of your files touched." Relay that to t