Check memory before re-reading the codebase or asking the user to re-explain context.
Entry Router
Session start on existing project?
→ Run Step 1 (session start recall) BEFORE reading any files.
Debugging an issue?
→ READ: ## Targeted Recall (debug path)
Implementing a feature?
→ READ: ## Targeted Recall (feature path)
claude-mem not installed?
→ READ: ## Fallback
Jump directly to the matched path. Do not read all recall sections before starting.
Step 1 — Session Start Recall
search(query="recent work", project="[project name]", limit=10, sort="recent")
Read results — you now know: current phase, last built/changed, key decisions, gotchas. Resume without reading progress.txt.
Targeted Recall
Before debugging:
search(query="[error message or symptom]", project="[project]", type="bug-fix")
search(query="[component/file name] bug", project="[project]")
Before implementing:
search(query="[feature type] implementation", project="[project]")
search(query="[component pattern] how we built", project="[project]")
Before modifying shared code:
search(query="[function/component name] decisions", project="[project]", type="decision")
search(query="why [architecture decision]", project="[project]")
Timeline drill-down (if search result looks relevant but needs more context):
timeline(anchor_id="[ID from search result]", depth=3)
Fetch full details (only after timeline confirms relevance):
get_observations(ids=["ID1", "ID2"])
Don't fetch everything — filter first (search → timeline → fetch). Full observations cost 500-1000 tokens each.
Recall Report
MEMORY RECALL — [project name]
Last session: [timestamp]
Last worked on: [what was built/fixed]
Recent decisions: [key decisions]
Known gotchas: [gotcha observations]
RELEVANT TO CURRENT TASK: [matching observations]
RESUMING FROM: [where to pick up]
Fallback (claude-mem not installed)
- Read
progress.txtfor phase and last step - Read
./docs/IMPLEMENTATION_PLAN.mdfor current phase context - Check recent git log:
git log --oneline -10 - Ask user: "What were we last working on?"
If no project name provided and running standalone → ask: "Which project? (leave blank to use current directory)" before running search queries.
What claude-mem Stores Automatically
| Type | Example |
|---|---|
feature |
"Implemented product listing with pagination" |
bug-fix |
"Fixed cart state — was useState instead of Zustand" |
decision |
"CSS variables over Tailwind because dark mode toggle" |
gotcha |
"next/font variables must be on <html>, not <body>" |
pattern |
"All API errors return { error: string, code: string }" |
Token savings: session start recall saves ~3,500 tokens. Prior bug fix recall saves ~14,000 tokens vs re-investigating from scratch.