From Amnesia
How to silently use the amnesia handoff after a compaction, resume, or fresh-session restart. Use ONLY in recovery moments — when you see an amnesia handoff in your initial context, when the user references prior work absent from your context, or when you need a specific past detail (file contents, exact error, prior decision) you don't have. Never use during normal in-flow work, and never narrate the recovery to the user.
How this skill is triggered — by the user, by Claude, or both
Slash command
/amnesia:continuity-protocolThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are operating with the **amnesia** plugin installed. Amnesia maintains a
You are operating with the amnesia plugin installed. Amnesia maintains a handoff file across context boundaries (compactions, session resumes, fresh starts in a project you've worked on before). This skill tells you how to recognize and use that surface.
A persistent markdown handoff file at:
${CLAUDE_PLUGIN_DATA}/projects/<slug>/handoff/active.md
where <slug> is the current CLAUDE_PROJECT_DIR with non-alphanumerics
replaced by -. The file contains, in this order:
The file is overwritten by successive amnesia layers — assume it has the most detail available at the time you read it.
The handoff is automatically injected as additional context at the start of
every session that has matcher compact|resume|startup. So in most cases you
already have it — you don't need to re-read the file unless you want full
fidelity or a specific section you didn't fully retain.
This is the most important fact in this skill.
Claude Code stores the entire conversation as a JSONL transcript at:
~/.claude/projects/<slug>/<session-id>.jsonl
This file is append-only. It is never truncated, even by compaction. Every
message, every tool call, every tool output that ever happened in the session
is still on disk in that file, byte-for-byte. Lines before the most recent
compact_boundary system entry are the full pre-compaction history that
your in-memory context window no longer contains.
If you need a detail the handoff doesn't cover — exact file contents you
read earlier, the precise error message you saw, a specific decision the user
made — Read the transcript directly. You can also use the amnesia walker:
python3 ${CLAUDE_PLUGIN_ROOT}/hooks/lib/jsonl_walker.py tail <transcript> -n 20
python3 ${CLAUDE_PLUGIN_ROOT}/hooks/lib/jsonl_walker.py tail <transcript> -n 5 --role user --after-compact
python3 ${CLAUDE_PLUGIN_ROOT}/hooks/lib/jsonl_walker.py files <transcript>
python3 ${CLAUDE_PLUGIN_ROOT}/hooks/lib/jsonl_walker.py summary <transcript>
Don't re-derive lost work when you can recover it for the cost of one file read.
If you need a specific past detail and the handoff doesn't cover it, use the
recall MCP tool (amnesia ships one) instead of guessing — it greps across
all your handoffs.
Citations in the handoff like [L:1234-1240] are line ranges in the on-disk
JSONL transcript. Use Read on the transcript at those ranges to recover
exact bytes when needed.
| Situation | What to do |
|---|---|
| You were just restored after a compaction (you see this skill or the handoff in your initial context) | Skim the handoff. If the "Concrete next action" line is specific, follow it. If something feels off, Read the transcript before proceeding. |
| You're resuming a session (source: resume) | Same as above — the handoff was machine-local and is gated by cwd + age. |
| The user references prior work and you have no memory of it | First check if a handoff was injected and you missed it. Then run /amnesia:recall <topic>. |
| You need exact prior content (a file you read, a command output, a user constraint) | Read the JSONL transcript. The walker's tail and summary subcommands help. |
| You hit a natural pause and want to safeguard against the next compact | Suggest running /amnesia:snapshot — it writes a manual high-fidelity handoff. |
| You learn a durable fact the user will want every session | Suggest /amnesia:promote — it writes the fact into project CLAUDE.md or auto-memory so it survives compaction natively, no plugin needed. |
Sometimes on the first turn after a compaction you will receive a system
reminder asking you to refine the handoff before answering. This is amnesia
L3 — the highest-fidelity capture path. Honor it: spend ~30 seconds editing
active.md to fix what the mechanical/Haiku layers got wrong, then answer the
user normally. You have full context right now; the next-you who reads this
handoff after the next compaction will not. Write to that reader.
/amnesia:promote. Amnesia owns the acute handoff slice.active.md mid-session yourself. The hooks own it (L2 enrich,
L3 Stop refine, preempt at high context). Manual updates only via the
explicit /amnesia:snapshot slash command.npx claudepluginhub 88plug/claude-code-plugins --plugin amnesiaRequests code review by dispatching a subagent with git diff context. Use after completing tasks, major features, or before merging to catch issues early.