← ClaudeAtlas

plan-assistlisted

Set up and maintain a three-tier project-documentation system (charter.md + work-plan.md + log.md) that keeps a project's intent from drifting across sessions. The journal is a write-ahead log for project intent; a cheap periodic "heartbeat" catches drift early. Use when the user says "set up project docs", "plan docs", "start a new project", "plan-assist", "session handoff", "wrap up this session", "before I move/reset the repo", or "project heartbeat". Invoke explicitly or when these phrases surface.
benjsmith/plan-assist · ★ 0 · AI & Automation · score 72
Install: claude install-skill benjsmith/plan-assist
# plan-assist — layered planning docs Three root docs. **charter.md** = stable directives (DO/DO NOT, invariants, build-order status table, gotchas). **work-plan.md** = current plan + handoff. **log.md** = append-only journal, canonical. Goal: prevent drift. ## INVARIANTS (never break) - **I1.** If charter.md and log.md disagree → **log.md wins**. charter.md only distills it. - **I2.** log.md is **append-only**: never edit/delete old entries; newest at bottom; absolute dates only (resolve "today" to the real date). - **I3.** log.md is a **write-ahead log**: append AND commit a dated entry BEFORE any risky op, not after — so a destructive op can't lose it. (A session once lost its tree on a `mv`; the journal was the only recovery.) ## SESSION CONTRACT — do each, in order 1. **START:** read charter.md → work-plan.md → log.md (skim recent). Always, even if the prompt seems narrow. 2. **ON CHANGE:** edit work-plan.md in the SAME commit as the code change — never let it lag. 3. **BEFORE RISKY OP** (`mv` workdir · `git reset --hard` · force-push · big migration): commit a dated log.md entry FIRST (per I3). 4. **PHASE LANDS:** summarize it into log.md, prune it from work-plan.md (keep < ~250 lines). 5. **STOP MID-TASK:** write a SESSION HANDOFF block atop work-plan.md (shape below). 6. **SESSION END:** append a dated log.md entry (decided/changed · new gotchas · status changes · open questions). 7. **EACH COMMIT + BOUNDARY:** run the HEARTBEAT. Keep live status OUT of charter.md