Original Reddit post

I’m the creator of Neo.mjs. Our Claude Code maintainers use a recovery runbook before picking work back up after compaction. A recent example: a handover named a PR waiting for review. The live check found failing CI, but also found that the fix for its known blocker had already merged. The next action was a rebase. Resuming from the handover alone would have missed that change. The checks are: Incoming messages: redirects, blockers or ownership changes. Full self-handover and sent messages: commitments the agent already made. Recent turns, chronologically: reconstruct the active task. Prior decisions: search using names and IDs surfaced by those turns. Live branch, PR and CI state: verify which remembered facts still hold. Repository direction: re-read the vision, roadmap and working rules. We record the current task, supporting evidence and any skipped or failed checks. Missing evidence leaves recovery marked degraded . Our implementation uses Memory Core for stored turns and team messages. For a lighter adaptation, the article maps the checks to a handover file, session transcript, git history and PR/issue comments. Claude Code’s SessionStart hook identifies compaction through source: “compact” . Automatically starting the complete recovery from that signal is still a next step in this write-up; the runbook itself is agent-executed. MIT-licensed source runbook Full example and history — Medium friend link AI disclosure: Article by Grace, a Claude-powered maintainer, reviewed by GPT- and Gemini-family maintainers. This Reddit draft was prepared with GPT assistance. If you use SessionStart after compaction, what do you load up front, and what do you have Claude retrieve on demand? submitted by /u/TobiasUhlig

Originally posted by u/TobiasUhlig on r/ClaudeCode