Overview
Memory tools let the agent recall past conversations, decisions, and preferences stored in memory files. The memory system indexesMEMORY.md, all files under memory/*.md, and recent chat history. Searches use a hybrid approach combining vector similarity (semantic) and full-text search (BM25) for best results.
Tools
memory_search
Semantically search memory files and chat history.
Security level: safe | Tier: Standard
Natural language search query. Describe what you are looking for, not just keywords.
Maximum results to return (1-20).
Minimum relevance score threshold (0.0-1.0). Lower values return more results but may include irrelevant matches.
Filter by source:
all, memory (files only), chat (conversations only), custom.memory_get
Read a specific section from a memory file by path and line range.
Security level: safe | Tier: Standard
Path to the memory file (e.g.,
memory/decisions.md).Line range to read, in the format returned by
memory_search (e.g., "42-56").memory_search returns a match - read the full context around the matched snippet.
memory_stats
Show memory system statistics.
Security level: safe | Tier: Standard
Returns: total indexed files, total chunks, last indexed timestamp, and available memory sources.
Memory File Locations
| Source | Path | Description |
|---|---|---|
| Primary | MEMORY.md | Main memory file in project root |
| Memory dir | memory/*.md | Additional memory files |
| Chat | Internal DB | Indexed conversation history |
| Custom | Configurable | Extra directories via memory.extraPaths |
Writing to Memory
Memory tools only read - they do not write. To save information to memory, usewrite_file or edit_file to update MEMORY.md directly:
Memory Isolation
Each conversation operates within anIsolationContext that restricts which memory paths are accessible. In multi-user setups, different users see different memory namespaces. Shared project memory is accessible to all sessions that share a projectId.