mem-search
npx machina-cli add skill uukuguy/dev-phase-manager/mem-search --openclawMem Search
Search and browse work memories with local MEMORY_INDEX.md as the primary source.
Execution Steps
1. Read Local Memory Index (Priority)
Read docs/dev/MEMORY_INDEX.md first:
if [ -f docs/dev/MEMORY_INDEX.md ]; then
# File exists - use as primary source
cat docs/dev/MEMORY_INDEX.md
fi
1.1 No search query provided ā Show recent entries
Display the most recent 20 entries from MEMORY_INDEX.md:
- Show all entries from
[Active Work]section - Show recent entries from the latest completed phase section
- Format: time-descending order
š Memory Index (Recent 20 entries)
## [Active Work]
- 15:30 | Completed mem-save skill implementation
- 14:00 | Started dev-phase-manager v1.1.0
## Phase 4 - MCP Tool Server [COMPLETED 2026-02-22]
- 18:30 | Phase 4 complete: MCP server 30 tests all pass
- 16:45 | Architecture decision: spawn_blocking wraps Wasm sync execution
...
1.2 Search query provided ā Filter matching entries
Search for entries containing the query keyword in MEMORY_INDEX.md:
- Case-insensitive matching
- Search across all sections (active + archived phases)
- Highlight matching keywords in output
š Search results for "architecture" in MEMORY_INDEX.md:
- [Phase 4] 16:45 | Architecture decision: spawn_blocking wraps Wasm sync execution
- [Phase 0] 10:00 | Architecture design completed: bilingual Python + TypeScript
2. Search claude-mem
Use mcp__plugin_claude-mem_mcp-search__search to search MCP memory:
# If query provided
mcp__plugin_claude-mem_mcp-search__search \
--query "$ARGUMENTS" \
--limit 10
# If no query, search recent project memories
mcp__plugin_claude-mem_mcp-search__search \
--query "[ProjectName]" \
--limit 10
3. Search Memory Knowledge Graph
Use mcp__memory__search_nodes to search the knowledge graph:
# If query provided
mcp__memory__search_nodes \
--query "$ARGUMENTS"
# If no query, search project entity
mcp__memory__search_nodes \
--query "[ProjectName]"
4. Merge and Display Results
Present results in a unified view with local index first:
š Memory Search Results
āāā Local Index (MEMORY_INDEX.md) āāā
[Results from step 1]
āāā claude-mem āāā
š [2026-02-22 18:30] [memory] Phase 4 completed - MCP server all tests pass
š [2026-02-22 15:00] [memory] Phase 4 architecture decision - spawn_blocking
āāā Knowledge Graph āāā
š Ouroboros
- Adopted bilingual architecture (Python + TypeScript)
- Using FastMCP as MCP server framework
š MCP Server
- Using FastMCP framework
- Expose vault skills as MCP tools
š” Tips:
- Use /mem-search <keyword> to search specific topics
- Use /mem-save to save current progress
- For full details on a memory, ask me to fetch it
5. Offer Detail Retrieval
If user wants more details on a specific memory:
# Fetch full observation details
mcp__plugin_claude-mem_mcp-search__get_observations \
--ids [id1, id2]
Use Cases
Scenario 1: Browse all recent memories
/mem-search
# ā Shows MEMORY_INDEX.md recent 20 entries
# ā Shows claude-mem recent memories
# ā Shows knowledge graph entities
Scenario 2: Search specific topic
/mem-search architecture
# ā Filters MEMORY_INDEX.md for "architecture" entries
# ā Searches claude-mem for "architecture"
# ā Searches knowledge graph for "architecture"
Scenario 3: New session context recovery
# New session starts
/mem-search
# ā Quickly see what happened in recent work
# ā Understand current state without reading all files
Smart Features
1. Local Index Priority
MEMORY_INDEX.md is the primary source because:
- It's structured by phase with timestamps
- It's browsable without semantic search
- It provides a chronological overview
- It works offline without MCP servers
2. Deduplication
When merging results from multiple sources:
- Local index entries are always shown first
- claude-mem results that match local entries are marked as
(indexed) - Knowledge graph results supplement with entity relationships
3. Graceful Degradation
If MEMORY_INDEX.md doesn't exist:
- Skip local index display
- Fall back to claude-mem and knowledge graph
- Suggest running
/mem-saveto create the index
Notes
- Read-only: This skill only reads data, never modifies files
- Performance: Local index is fast; MCP searches may take longer
- Fallback: If MCP servers unavailable, still shows local index
- Project detection: Auto-detect project name from git remote or directory
Source
git clone https://github.com/uukuguy/dev-phase-manager/blob/main/skills/mem-search/SKILL.mdView on GitHub Overview
Mem Search prioritizes MEMORY_INDEX.md as the primary source to browse work memories. It then augments results with claude-mem searches and a knowledge graph, delivering a unified view of recent activity and related context.
How This Skill Works
Mem Search first reads the local MEMORY_INDEX.md (priority source). It then queries claude-mem for memory entries and searches the memory knowledge graph, finally merging all results into a single, ordered view with the local index prioritized.
When to Use It
- Browse all recent memories from MEMORY_INDEX.md when starting a new session
- Search for a specific topic across memory sources (MEMORY_INDEX.md, claude-mem, knowledge graph)
- Recover context for a new session by quickly reviewing recent activity
- Explore related entities in the knowledge graph linked to your project
- Get a quick, unified memory snapshot for project kickoff
Quick Start
- Step 1: Run /mem-search to load the local index and surface recent entries
- Step 2: Provide a keyword (e.g., /mem-search architecture) to filter memories
- Step 3: Review the unified results and fetch full details with the observation command if needed
Best Practices
- Start with MEMORY_INDEX.md to ground context before querying other sources
- Use concise keywords to filter for precise memory entries
- Review recent entries (Active Work) first, then completed phases for context
- Fetch full observation details only when a memory needs deeper understanding
- Regularly refresh MEMORY_INDEX.md to capture the latest project updates
Example Use Cases
- Run /mem-search with no query to surface recent MEMORIES and claude-mem history
- Search for 'architecture' to pull architecture-related entries and graph hints
- Fetch detailed observations for a specific memory via the get_observations command
- Use knowledge graph results to identify entities like Ouroboros and MCP Server
- Merge results to compare phases and decisions across sources