The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Mnemos listing page.
The autopilot knowledge base for your coding agent.
Install once. From then on, your agent builds itself a structured knowledge base of your project — while you code. No prompts to remember, no remember() calls, no API to learn.
Single Go binary. Embedded SQLite. Zero cloud. No Docker. No Python. No Node runtime.
Every memory server stores text. Mnemos compiles a knowledge base.
While other servers expect you (or a carefully-tuned prompt) to decide when to store and when to retrieve, mnemos runs a full pipeline in the background:
The pipeline runs behind the MCP and hook interfaces. Agents use normal memory tools; they do not need to orchestrate deduplication, summarization, ranking, packing, or lifecycle maintenance themselves.
Layer 1 — MCP transport. Standard MCP server, stdio, works with any MCP client.
Layer 2 — Autopilot hooks. One command (mnemos setup claude) wires hooks + steering + MCP config. Session start auto-injects relevant context. Prompt submit auto-searches on topic change. Session end verifies coverage.
Layer 3 — Auto-compiled knowledge base. Quality gate, 3-tier dedup, auto-summarization, file linking, MMR context assembly — all automatic. You never trigger them. Includes passive background daemon that continuously detects staleness, contradiction, and missing relations across your memory base.
| Mem0 | Zep/Graphiti | engram | OMEGA | mnemos | |
|---|---|---|---|---|---|
| MCP-native | ✓ | ✓ | ✓ | ✓ | ✓ |
| Single binary, no runtime deps | — | — | ✓ | — | ✓ |
| Zero cloud / local-first | partial | — | ✓ | ✓ | ✓ |
| 1-command autopilot setup | — | — | — | — | ✓ |
| Auto-quality gate | — | — | — | — | ✓ |
| Auto-summarization | — | — | — | — | ✓ |
| Auto file-linking (git-aware) | — | — | — | — | ✓ |
| MMR context assembly | — | — | — | — | ✓ |
| Passive background daemon | — | — | — | — | ✓ |
| Temporal knowledge graph | — | ✓ | — | — | partial (decay + supersede) |
| Self-host cost | $0-cloud | ~$50/mo (Neo4j) | $0 | $0 | $0 |
Mnemos isn't trying to be Zep — different bet. Zep is the best answer if you need temporal reasoning over business facts and have enterprise infrastructure. Mnemos is the best answer if you're a coding agent user who wants an autopilot knowledge base that runs itself on your laptop.
Swap claude for cursor, kiro, gemini-cli, codex, or trae. Restart your client. Autopilot runs from here.
mnemos setup <client> writes:
CLAUDE.md, .cursorrules, .kiro/steering/mnemos.md) — tells the agent what's worth storing.claude/hooks.json or equivalent) — wires lifecycle events.mcp.json) — registers mnemos serve as tool providerThree hooks run automatically:
Session start → mnemos hook session-start
Assembles relevant memories within a token budget (MMR-diversified, file-boosted). Injects into context. Cold start < 200 ms.
Prompt submit → mnemos hook prompt-submit
Detects topic + intent changes. Auto-searches knowledge base when the shift is meaningful. Respects cooldown to avoid noise.
Session end → mnemos hook session-end
Verifies whether durable memory was captured. Optionally stores a minimal breadcrumb. Cleans up session state.
Steering tells the agent what is worth remembering. Hooks handle retrieval, dedup, summarization, linking — so the agent doesn't waste tokens thinking about memory logistics.
After upgrading Mnemos, verify both the CLI and the live MCP server:
Then ask your agent to call mnemos_runtime. That reports the actual MCP server process handling tool calls, including version, host, pid, started_at, executable, data_dir, and project_id. If it still shows an old version, close the MCP client and reopen it. Use pkill -f "mnemos serve" only after closing active MCP clients, or when you intentionally accept reconnecting all active Mnemos transports.
You can validate the returned JSON with:
Daily mnemos check does not require MCP runtime JSON. Public-launch or upgrade verification should pass --mcp-runtime so stale MCP servers are caught before release.
Beyond hooks, mnemos runs a background daemon that continuously improves your knowledge base:
Mnemos exposes separate views for configuration, raw activity, knowledge quality, and end-to-end loop readiness:
mnemos check opens the database read-only. It does not run migrations,
start workers, or modify memories. mnemos check --fix is intentionally
narrow: it only archives older generated autopilot reports after producing a
verified cleanup plan.
| Operation | 350 memories | 1,500 memories |
|---|---|---|
store (new, with full pipeline) | 57 ms | 24 ms |
store (dedup hit) | 55 ms | 22 ms |
search hybrid (RRF + file boost) | 42 ms | 39 ms |
maintain (decay + GC) | 27 ms | 108 ms |
| hook session-start (cold) | < 200 ms | — |
| binary size | ~12 MB | — |
Hardware: M1 Pro, 16GB RAM, SQLite on SSD. Your latency may vary.
Most operations stay under 60 ms regardless of dataset size. Hook subcommands use InitLight mode — no background workers, no session interrupt.
Value benchmark (token savings, precision, gotcha avoidance) is in progress. See DOGFOODING_RUNBOOK.md for methodology. Real numbers will replace this placeholder before public launch.
| Tool | What it does |
|---|---|
mnemos_store | Store a memory (full auto-pipeline runs transparently) |
mnemos_search | Hybrid FTS + semantic + file-overlap search |
mnemos_context | Assemble budget-aware, MMR-diversified context |
mnemos_get | Fetch by ID |
mnemos_update | Update content, summary, or tags |
mnemos_delete | Soft-delete (recoverable via maintain) |
mnemos_relate | Link two memories (supersedes, caused_by, depends_on) |
mnemos_maintain | Run decay, archival, GC, stale detection |
mnemos_runtime | Report live MCP server version, host, pid, executable, uptime, data dir, and project scope |
Most users never touch this. But if you want:
Resolution order is: explicit --config, project-local
.mnemos/config.yaml, then ~/.mnemos/config.yaml. Environment variables use
the MNEMOS_ prefix.
Mnemos auto-classifies. Override manually via --type flag.
| Type | Decay rate | Use for |
|---|---|---|
short_term | fast (~1 day) | todos, temp notes, WIP |
episodic | medium (~1 month) | session events, bug fixes |
long_term | slow (~6 months) | architecture decisions |
semantic | very slow | facts, definitions, knowledge |
skill | slow | repeatable procedures and operational workflows |
compiled | managed | auto-compiled project knowledge |
I got tired of re-explaining my own project to Claude Code every morning.
I tried the existing memory servers. Most of them stored text fine. But every one expected me — or a carefully-tuned prompt — to decide when to store and when to retrieve. That's not a knowledge base. That's a database with an MCP wrapper.
Mnemos is what I built to make it actually automatic. mnemos setup claude, restart the editor, and the knowledge base compiles itself.
Flags: --global (install for all projects), --force (overwrite existing), --project <id> (override project ID).
For Claude Code, --project <id> writes MNEMOS_PROJECT_ID into the MCP entry and hook commands. This is the canonical project scope used by hooks and mnemos serve; mnemos --project <id> ... is bridged to the same runtime environment for manual commands.
Claude subagents may not receive session-start hook context. The main agent should call mnemos_context before delegation and include relevant memories or memory IDs in the subagent task prompt.
Codex note: Codex uses a single global config shared between the CLI and VSCode extension.
--globaland--localare ignored. The setup command writesMNEMOS_PROJECT_IDand accepts--project <id>as an explicit override. Restart both Codex CLI and the VSCode extension after setup.
If you are using emerging AI frameworks like Trae (Solo Agent), OpenClaw (Claw bot), Paperclip, or Claude Desktop, you can easily connect Mnemos manually. Mnemos speaks standard MCP over stdio.
Just add this JSON snippet to your client's MCP configuration file (e.g., trae.json, openclaw.json, paperclip.config.json, or claude_desktop_config.json):
Mnemos does one thing: give agents a knowledge base that compiles itself.
See ROADMAP.md. Short version:
.mnemos/shared/ for teammate knowledgeMIT