Claude Memory Kit (CMK). Persistent memory for Claude. Embedded, zero-server.
Project description
claude-memory-kit
Persistent memory for Claude. MCP server with hybrid search (dense + sparse vectors, RRF fusion), SQLite storage, and automatic sensitivity classification.
install
uv tool install claude-memory-kit
Or with pip:
pip install claude-memory-kit
setup
Add to your Claude Code MCP config (~/.claude/mcp.json):
{
"mcpServers": {
"memory": {
"command": "cmk"
}
}
}
That's it. Claude will automatically save and recall memories across sessions.
how it works
3 tools exposed to Claude:
- save: store something worth remembering. gate, person, project, and sensitivity are auto-classified.
- search: hybrid search across memories (keyword + semantic + graph traversal).
- forget: remove a memory by ID with a reason.
Claude calls save proactively when it learns something worth keeping (preferences, corrections, commitments, facts about people). No manual intervention needed.
features
- Hybrid search: dense vectors (fastembed) + sparse vectors (BM25) with Reciprocal Rank Fusion
- Write gates: behavioral, relational, epistemic, promissory, correction (auto-classified)
- Memory decay: configurable half-life per gate type, automatic archival
- Graph traversal: RELATED_TO, CONTRADICTS, FOLLOWS edges between memories
- Sensitivity classification: Opus-powered privacy detection (safe/sensitive/critical)
- PII scanning: regex-based detection for API keys, SSNs, credit cards, etc.
- Identity card: auto-generated summary of who Claude is working with
- Journal consolidation: automatic compression of old entries into digests
dashboard
CMK includes a web dashboard for managing memories:
cmk serve --port 7749
Then build and run the dashboard (Next.js):
cd dashboard
pnpm install && pnpm dev
Dashboard features: timeline view, search, graph visualization, identity management, rules, API keys, and a privacy review page.
cli
# save and search
cmk remember "user prefers dark mode" --gate behavioral
cmk recall "dark mode"
# maintenance
cmk scan
cmk classify
cmk classify --force
cmk reflect
cmk stats
cmk serve
| Command | Description |
|---|---|
cmk remember |
Store a memory with auto-classification |
cmk recall |
Search memories |
cmk scan |
PII scan across all memories |
cmk classify |
Opus sensitivity classification |
cmk classify --force |
Re-classify all memories |
cmk reflect |
Consolidate old entries + run decay |
cmk stats |
Storage and memory statistics |
cmk serve |
Start the API server |
environment
# required for LLM features
ANTHROPIC_API_KEY=<your-api-key>
# optional: Qdrant Cloud
QDRANT_URL=<your-cluster-url>
QDRANT_API_KEY=<your-key>
# optional: custom storage path
MEMORY_STORE_PATH=~/.claude-memory
See .env.example for all options.
license
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_memory_kit-0.2.0.tar.gz.
File metadata
- Download URL: claude_memory_kit-0.2.0.tar.gz
- Upload date:
- Size: 45.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16a3e0431659b1201dddd2a998e8e23d9eae1ba24cb0822cb934425f1fa7bacc
|
|
| MD5 |
53b870ae53f4d5d22f6d48eaf6273252
|
|
| BLAKE2b-256 |
1744f7099e12b085036aa6f979ded43a007aa6c849dc4bd7f9e486912ff7037e
|
File details
Details for the file claude_memory_kit-0.2.0-py3-none-any.whl.
File metadata
- Download URL: claude_memory_kit-0.2.0-py3-none-any.whl
- Upload date:
- Size: 57.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cea925897563f4d0bc2a3971162b66e1d3b5ecbfec586bb01e15fe779fc3ea1f
|
|
| MD5 |
7413d4de2410d73eb57e18f1908f0542
|
|
| BLAKE2b-256 |
92e9c74646df5f5b528bbad7eceb1ff1033671efa32b8ee98a23a116d284572c
|