v5.0.0 — Lean core: handoffs replace the daily chronicle; three memory caps; stale-refs detector
The default is rebuilt around what survived long-running production use. The chronicle-shaped defaults — daily logs + the rolling next-session-prompt — were the parts that silently rotted (unclosed days; an NSP that froze while still looking authoritative; a MEMORY.md that packed 51.5 KB into 152 lines without tripping the old line check). v5 keeps the kit's soul — date-tagged memory, audit-driven promotion, "user only talks" — and swaps the fragile layer for one that fails loudly.
Breaking
/close-sessionreplaces/close-dayas the default close ritual: capture dated patterns → audit for 3+-date repetition → promote on your "yes" → REPLACE the MEMORY.md header → write the handoff.context/next-session-prompt.mdretired. "Where we left off" is now one immutable note per closed session incontext/handoffs/; the start hook injects the newest one.daily/journal +/close-daymoved to opt-in.kit/advanced/close-day-layer/— onecpre-enables it, and it composes with the v5 core.
Added
- Three independent MEMORY.md caps, hook-enforced (defaults 180 lines / 32 KB / 3000 chars per line; tunable via
CMK_MEMORY_*env). Line count alone lies — content densifies into ever-longer lines whilewc -lstays flat. - Stale-refs detector — every session start, file paths mentioned in memory are checked against disk; anything moved or deleted is flagged. The #1 memory failure is a stale belief that looks current.
- MEMORY.md header discipline — the header is "current state in 2-3 sentences", replaced at every close, never a chronicle.
context/handoffs/HANDOFF-TEMPLATE.md— the five-section session-close note.
Changed
session-start.pyrewritten: newest handoff + memory stats + projects/experiments overview + knowledge index; injection budget 50K → 20K chars.pre-compact.shnow requires MEMORY.md to be fresh AND under its line cap before allowing compaction.- README rewritten beginner-first (incl. the new "Why it doesn't rot" section); all docs + 4 README diagrams synced to v5.
Migration from v4.x
See .kit/CHANGELOG.md § [5.0.0] — or simplest: clone v5 fresh and tell Claude "I have a v4 kit at , help me migrate". Memory entries, knowledge articles, rules and projects carry over as-is.