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
cmk remember "user prefers dark mode" --gate behavioral
cmk recall "dark mode"
cmk scan # PII scan
cmk classify # Opus sensitivity classification
cmk classify --force # re-classify all
cmk reflect # consolidate + decay
cmk stats
cmk serve # start API server
environment
# Required for LLM features (reflect, classify, auto_extract)
ANTHROPIC_API_KEY=<your-api-key>
# Optional: switch to Qdrant Cloud
QDRANT_URL=https://your-cluster.cloud.qdrant.io:6334
QDRANT_API_KEY=<your-key>
# Optional: custom storage path (default: ~/.claude-memory)
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.1.1.tar.gz.
File metadata
- Download URL: claude_memory_kit-0.1.1.tar.gz
- Upload date:
- Size: 38.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
781fb04d7bcfc0d75ad181085071bb43a8fb5a8dcb5b59acab511c72d7637538
|
|
| MD5 |
3b3c93f3e3a2ebfc24a2e242d0965131
|
|
| BLAKE2b-256 |
cc3ebd1a085ef73734cab7d0cbf8874db7ec9a5825ebab456e56a3f1bae32a17
|
File details
Details for the file claude_memory_kit-0.1.1-py3-none-any.whl.
File metadata
- Download URL: claude_memory_kit-0.1.1-py3-none-any.whl
- Upload date:
- Size: 49.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1388849f662c42ed8a5065c1228a052ee862359fc8ef416cd97bbed9d4b7f73
|
|
| MD5 |
2f8469dcd08afe06eb4ac76b5490f661
|
|
| BLAKE2b-256 |
0c64be72c25b04c200d2315d3ef46dca3a5cd2f7b118c2710d6b90958b3ba197
|