Archive planning
Retire a `.planning/<initiative>/` subdir after its content has been migrated to the vault via `/strata:bootstrap`. Runs `git mv .planning/<initiative> .attic/<initiative>` and commits. Refuses to archive subdirs that aren't fully bootstrap-processed (to avoid losing knowledge). NEVER auto-invokes, always require explicit user request, since the operation rewrites the working tree.From its SKILL.md
npx -y skills add gideondk/strata --skill archive-planningAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.0 KB, as published. Nobody here has run it
strata:archive-planning
The "retire after migrate" step in the per-initiative planning
Workflow. Use after /strata:bootstrap over a shipped initiative's
Planning dir has pulled the durable knowledge into the vault.
The full workflow
.planning/auth-rewrite/PLAN.md ← humans write here while live
.planning/auth-rewrite/CONTEXT.md
.planning/auth-rewrite/SPEC.md
│
│ /strata:bootstrap
▼
vault/<repo>/decisions/2026-05-24-token-rotation.md
vault/<repo>/domain/auth-tokens.md
vault/<repo>/lessons/2026-05-24-auth-rewrite.md
│
│ /strata:archive-planning .planning/auth-rewrite/
▼
.attic/auth-rewrite/PLAN.md ← gone from active tree, still in git
.attic/auth-rewrite/CONTEXT.md ← reachable via `git log --follow`
.attic/auth-rewrite/SPEC.md
How
Dry-run first:
"${CLAUDE_PLUGIN_ROOT}/bin/strata" archive-planning \
.planning/auth-rewrite
If every file is bootstrap-processed, you'll see the proposed git Mv + commit. Otherwise the script lists the unprocessed files and
Refuses, telling you to bootstrap them first.
Then apply:
"${CLAUDE_PLUGIN_ROOT}/bin/strata" archive-planning \
.planning/auth-rewrite --apply
The script:
- Verifies every
.mdin the subdir is in.bootstrap-state.jsonwith a current SHA (i.e. processed AND unchanged since) git mv .planning/auth-rewrite .attic/auth-rewritegit commit -m "chore: archive planning .planning/auth-rewrite → .attic/auth-rewrite"
When to use --force
You can pass --force to archive a subdir with unprocessed files,
but understand the consequence: the knowledge in those files
Doesn't make it into the vault. They'll still exist in git history
Under .attic/, but Strata won't surface them in searches.
Reasonable cases:
- The subdir has scratch / TODO files you intentionally didn't
bootstrap (e.g.
BRAINSTORM.md,TEMP.md) - You're archiving stale planning you specifically don't want in the vault
In every other case, run /strata:bootstrap over the subdir first.
Don't do
- Don't run this on directories outside
.planning//.scratch/unless you know what you're doing, there's no scope check beyond "must be inside the project tree." - Don't auto-invoke. The user must explicitly ask. The Stop hook doesn't suggest this, the SessionStart primer doesn't suggest this. Archive is a deliberate, end-of-initiative action.
- Don't archive when the bootstrap migration produced lots of
proposedADRs you haven't reviewed yet. The whole point of the workflow is settling state before retiring source.