mem-search
Search through past session context and observations. Use when asking about past work, previous implementations, how something was done before, or recalling decisions. Keywords: remember, recall, last time, before, history, what did we, how did we
When & Why to Use This Skill
The Memory Search (mem-search) skill provides a persistent knowledge layer for Claude, enabling it to index and retrieve observations across multiple work sessions. By searching through past decisions, bug fixes, and implementation details, it ensures project continuity and allows the agent to recall critical context that would otherwise be lost between sessions.
Use Cases
- Recalling Architectural Decisions: Quickly retrieve the reasoning behind specific design patterns or tool choices made in previous sessions.
- Bugfix History Tracking: Search for past resolutions to similar errors to prevent regressions and speed up current debugging efforts.
- Session Resumption: Ask 'What did we do last time?' to get an instant summary of recent progress and pick up work exactly where it left off.
- Knowledge Retrieval: Locate specific discoveries or refactoring logic implemented weeks ago without manually searching through git logs or chat history.
| name | mem-search |
|---|---|
| description | Search through past session context and observations. Use when asking about past work, previous implementations, how something was done before, or recalling decisions. Keywords: remember, recall, last time, before, history, what did we, how did we |
Memory Search - Cross-Session Context
Overview
Search through stored observations from past Claude Code sessions. Use this skill when the user asks about:
- "What did we do last session?"
- "How did we implement X before?"
- "What bugs did we fix recently?"
- "What decisions were made about Y?"
- "Show me recent work on this project"
How to Use
Run the search command to query the context memory database:
python3 "$CLAUDE_PROJECT_DIR/.claude/memory/context_memory.py" search "<query>"
Common Queries
Recent activity:
python3 "$CLAUDE_PROJECT_DIR/.claude/memory/context_memory.py" recent
Search for specific topic:
python3 "$CLAUDE_PROJECT_DIR/.claude/memory/context_memory.py" search "authentication"
Get statistics:
python3 "$CLAUDE_PROJECT_DIR/.claude/memory/context_memory.py" stats
Get full context for current branch:
python3 "$CLAUDE_PROJECT_DIR/.claude/memory/context_memory.py" context "branch-name"
Observation Types
The memory stores these types of observations:
| Type | Symbol | Description |
|---|---|---|
| decision | D | Choices made about architecture, tools, approaches |
| bugfix | B | Bug fixes and error resolutions |
| feature | F | New features implemented |
| refactor | R | Code refactoring and cleanup |
| discovery | i | Information discovered during exploration |
| change | C | General code changes |
Database Location
The context memory is stored at: ~/.claude/context_memory.duckdb
Response Format
When presenting search results:
- Group by type (decisions, bugfixes, features, etc.)
- Show most recent first
- Include timestamp and branch if relevant
- Summarize rather than dump raw data
Example Response
"Based on context memory, here's what happened:
Recent Decisions:
- [2 days ago] Chose DuckDB over SQLite + Chroma for context storage
- [3 days ago] Adopted tiered context injection strategy
Recent Bugfixes:
- [Yesterday] Fixed authentication timeout in API routes
Recent Features:
- [Today] Implemented context memory hooks"