The architecture behind memory
CMK is a structured memory layer for Claude. It intercepts conversations via MCP, classifies memories through five semantic gates, stores them locally, and retrieves them with vector search when context demands it.
How data flows
From conversation to persistent recall, every memory passes through a deterministic pipeline.
Claude Desktop / Claude Code
|
v
┌─────────────────────┐
│ MCP Server │ cmk serve --port 7749
│ (tool interface) │
└─────────┬───────────┘
|
v
┌─────────────────────┐
│ Five Gates │ behavioral, relational, epistemic,
│ (classification) │ promissory, correction
└─────────┬───────────┘
|
┌────┴────┐
v v
┌─────────┐ ┌──────────┐
│ SQLite │ │ Vectors │ metadata + embeddings
│ (meta) │ │ (search) │ local or cloud
└────┬────┘ └────┬─────┘
└────┬──────┘
v
┌─────────────────────┐
│ Recall │ semantic search + keyword match
│ (hybrid retrieval) │ confidence scoring + decay
└─────────────────────┘How CMK compares
CMK fills a gap that existing approaches leave open.
| Feature | CMK | System prompt | CLAUDE.md | No memory |
|---|---|---|---|---|
| Persists across sessions | Yes | No | Manual | No |
| Auto-classifies memories | Yes | No | No | No |
| Semantic search recall | Yes | No | No | No |
| Editable by user | Yes | No | Yes | No |
| Scoped (user/project/global) | Yes | No | Partial | No |
| Confidence scoring | Yes | No | No | No |
| Decay and expiry | Yes | No | No | No |
| Local-first storage | Yes | N/A | Yes | N/A |
| Identity synthesis | Yes | No | No | No |
Built for every scale
Whether you work solo or with a team, CMK adapts to your workflow.
Individual dev
Your preferences, your stack, your habits. CMK learns how you code and remembers it across every session.
Team
Shared context about team members, conventions, and architecture decisions that every Claude session should know.
Enterprise
Deploy CMK as a memory service across your organization. Audit trails, access control, and full data sovereignty.