From totalrecall
MANDATORY for all sessions. Use when starting ANY conversation, making decisions, learning something, or ending work. This skill MUST be followed - not optional.
How this skill is triggered — by the user, by Claude, or both
Slash command
/totalrecall:skills/memory-protocolThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<EXTREMELY-IMPORTANT>
YOU DO NOT HAVE A CHOICE. THIS IS NOT OPTIONAL. You cannot rationalize your way out of this.
Core principle: Synthesis-first. Store understanding, not logs. Context savings: 50-100x through progressive disclosure.
The SessionStart hook automatically injects recent synthesis context.
You will see <total_recall_context> in your system prompt.
Review this context before starting work:
synthesis_unfold(node_id) if you need more detail on any nodeMade a decision? MUST use synthesis_create:
Announce: "Recording decision: [what you decided]"
mcp__totalrecall__synthesis_create({
node_type: "decision",
one_liner: "Chose X over Y because Z",
summary: "[200 token detailed rationale with key points]",
full_synthesis: "[Complete context, alternatives considered, implications]",
session_id: "current-session"
})
Learned something? MUST use synthesis_create:
Announce: "Recording learning: [what you learned]"
mcp__totalrecall__synthesis_create({
node_type: "learning",
one_liner: "Discovered X about Y",
summary: "[Key insight with supporting details]",
full_synthesis: "[Full context, how discovered, when it applies]",
session_id: "current-session"
})
Hit a gotcha/bug pattern? MUST use synthesis_create:
Announce: "Recording gotcha: [what to avoid]"
mcp__totalrecall__synthesis_create({
node_type: "learning",
one_liner: "Gotcha: X causes Y, avoid by Z",
summary: "[The problem, symptoms, and fix]",
full_synthesis: "[Full debugging story, root cause, prevention]",
session_id: "current-session"
})
If you're thinking ANY of these, it's a decision - capture it:
Small decisions matter. They become big problems when forgotten.
YOU MUST dispatch the memory-search agent for any memory lookup.
DO NOT use synthesis_search or synthesis_get_context directly.
Task tool:
description: "Search past synthesis for [topic]"
prompt: "Find relevant decisions and learnings about [topic]"
subagent_type: "memory-search"
model: "haiku"
The agent returns compressed synthesis (500 tokens) vs raw data (5000+ tokens).
Why the agent?
synthesis_unfold({
node_id: "syn_abc123",
depth: "summary" // or "full" or "raw"
})
If you catch yourself thinking ANY of these, STOP. You are rationalizing.
"This decision is too small to record" → WRONG. Small decisions become big problems. Record it.
"I'll remember this" → WRONG. You won't. The next session won't. Record it.
"Let me just check the synthesis directly" → WRONG. Use the agent. Context is precious.
"This session is short, no need for protocol" → WRONG. Short sessions have decisions too.
"I'll capture at the end" → WRONG. You'll forget details. Capture as you go.
"The user didn't ask me to track this" → WRONG. Memory is infrastructure, not a feature. Record it.
"This is just a small fix" → WRONG. Small fixes often reveal learnings. Record them.
OK to use directly:
mcp__totalrecall__synthesis_create - REQUIRED for capturingmcp__totalrecall__synthesis_unfold - Fine for drilling into nodesmcp__totalrecall__session_graft - If hook didn't runDISCOURAGED - use agent instead:
mcp__totalrecall__synthesis_search - Use memory-search agentmcp__totalrecall__synthesis_get_context - Use memory-search agent| Tool | Use | Context Cost |
|---|---|---|
| synthesis_create | Capture decisions/learnings | ~50 tokens |
| synthesis_unfold | Expand specific node | 50-500 tokens |
| synthesis_search | Find by semantic similarity | 200+ tokens |
| synthesis_get_context | Load session context | 500+ tokens |
| session_graft | Attach to synthesis graph | ~100 tokens |
| synthesis_capture_chunk | Queue for background synthesis | ~20 tokens |
| synthesis_queue_status | Check synthesis pipeline | ~50 tokens |
Every session:
<total_recall_context> from hookRecording is not optional. It is infrastructure.
npx claudepluginhub Cygnusfear/totalrecall-plugin --plugin totalrecallAnalyzes coding sessions for key decisions, outcomes, and patterns worth remembering, then stores user-confirmed items via Pensyve. Use at session end.
Guides agents to deliberately search or skip memory using dejavu MCP tools, with query strategies and metadata filters for decisions, user preferences, conventions, and anti-patterns.