claude-mem
A lightweight memory management utility for Claude and other LLM-based agents. Claude-mem provides persistent, structured memory that survives across conversation sessions, enabling agents to recall context, preferences, and learned information.
Features
- Persistent Memory: Store and retrieve conversation context across sessions
- Structured Storage: Organize memories by topic, project, or custom taxonomy
- Semantic Search: Find relevant memories using embedding-based similarity search
- Memory Decay: Configurable time-based relevance scoring so stale memories fade
- Multi-Agent Support: Shared memory pools for collaborative agent workflows
- Privacy Controls: Local-first storage with optional encrypted cloud sync
Installation
npm install claude-mem
Quick Start
import { MemoryStore } from 'claude-mem';
const memory = new MemoryStore({
storagePath: '.claude-mem',
maxMemories: 10000,
decayFactor: 0.95,
});
// Store a memory
await memory.store({
content: 'User prefers TypeScript over JavaScript',
tags: ['preference', 'language'],
importance: 0.8,
});
// Retrieve relevant memories
const results = await memory.search('What language does the user prefer?', {
limit: 5,
minRelevance: 0.3,
});
Configuration
| Option | Default | Description |
|---|---|---|
storagePath | .claude-mem | Directory for memory storage |
maxMemories | 10000 | Maximum number of stored memories |
decayFactor | 0.95 | Daily relevance decay multiplier (0-1) |
embeddingModel | text-embedding-3-small | Model for semantic search |
Architecture
Claude-mem uses a hybrid storage approach:
- Short-term: In-memory LRU cache for active session context
- Long-term: SQLite database with vector extensions for persistent storage
- Index: HNSW index for fast approximate nearest neighbor search
API Reference
See the full API documentation for detailed usage.
License
MIT License