Create-or-resume + the self-saving notebook.
One command to continue a thread: /ccx:start-thread on an existing topic now resumes that thread instead of stopping on its STATE doc. And the notebook keeps itself fresh — three new hooks make persistence automatic:
Added
- Create-or-resume
start-thread— reopening a known topic resumes its scratch workspace; no duplicate threads. auto-compile-indexhook (PostToolUse on Write|Edit) — any STATE-doc write kicks a detached,.pending-debounced INDEX recompile. The INDEX saves itself.record-session-threadhook — records{display, slug, source, ts}per session under<scratch_root>/.sessions/, linking sessions to threads.state-freshness-guardhook (Stop) — if work is newer than the thread's STATE, blocks the stop once with a "persist Status/summary first" nudge (10 min grace, 30 min throttle,SKIP_STATE_GUARD=1escape hatch).
Fixed
./-prefixed and trailing-slash paths normalize correctly;extra_sectionsstrings are sanitized; adopts are counted in the tidy tally.
CI
- Test suite + plugin validation now run on every push and PR.
Verified: 73/73 tests (new hook e2e sections on tmpdir fixtures), claude plugin validate pass.
Full changelog: v0.3.0...v0.4.0