cogito-mem
Long-term memory for Claude Code, on your own machine. Cogi the squirrel keeps every message you and Claude exchange, and finds the right one again, even in over a million tokens of history. No API key, no cloud, no AI calls to store.
[Cogi the squirrel: Claude forgets. Cogi doesn't.]
Why try it
- Claude can look back. Every message and reply is kept word for word, with its date. When something has dropped out of the context window, or happened last month, Claude searches for it and gets your exact words back.
- It remembers what you did, too. The commands you ran (and whether they failed), the files you touched, what each sub-agent reported, and the lines of output that say how a command went: errors, metrics, how a long run ended.
- Private and free. One folder on your computer. No account, no API key, no AI calls to save a message. Nothing leaves your machine.
- Tested. In LongMemEval's long test, each question hides its answer in about 480 past sessions, some 1.2 million tokens. The past session holding the answer is among the first five Cogi finds for 93.0% of 500 questions, with no AI model involved, ahead of four other local memory plugins we ran on the same questions (86.6–89.8% at their best settings). On the short test, with about 50 sessions, it is 99.0%, level with the best. On LoCoMo, with GPT-5 mini answering, the 1,000 tokens Cogi hands back answer 89.4% of questions right, against 94.1% from rereading the whole conversation: 95% of the quality while the model reads about 9 times fewer tokens. A search over 10 million tokens takes 26 ms on a laptop CPU. See the results.
Install
You need Claude Code and uv, on macOS or Linux (Windows is experimental). Then, in a terminal:
The first start downloads the model (310 MB, about a minute). To get updates, turn on auto-update once: /plugin → Marketplaces → cogito-mem → Enable auto-update.
Step-by-step guide · Codex, Claude Desktop, Docker
Try it
- Tell Claude: Let's call the staging server "acorn".
- Clear its short-term memory:
/clear
- Ask: What did we call the staging server? Claude answers "acorn": Cogi brought it back.
What Cogi runs, downloads and stores
- Runs: four Claude Code hooks and one MCP server,
cogi. Each runs the released cogito-mem package from PyPI at the exact version the plugin pins (uvx cogito-mem==<version>); the plugin's uv.lock lists that release and numpy with their checksums. After each reply and at the end of a session, the hooks save the new messages from the session's transcript. At the start of a session and with each prompt, they add the most relevant memories (about 400 tokens per prompt, each line with an id Claude can open). The MCP server gives Claude three tools, memory_query, memory_open and memory_append, answered by a small service that listens on your computer only (127.0.0.1:7327).
- Downloads, once, over HTTPS:
cogito-mem and its one dependency, numpy, from PyPI (by uv); llama.cpp's llama-server from llama.cpp's official GitHub releases (skipped if you already have it); and the EmbeddingGemma 2 model (310 MB) from Hugging Face. After that, Cogi makes no network calls.
- Stores: everything in
~/.cogito-mem/ on your computer: your messages, a short note of what each turn did, what each sub-agent reported back, and at most 800 characters of each command's output (errors, metrics, how a long run ended), in one SQLite file. Common forms of API keys, tokens, private keys and passwords are replaced with [redacted] before anything is saved; the rest of tool output and what Claude's Read tool returns are never saved. Redaction goes by patterns, so others can get through. Sessions from before the install are read only if you ask (cogito-mem capture claude-code --all), and old sessions may hold secrets the redaction misses. Text inside <private>…</private> is skipped, and COGITO_MEM_CAPTURE=off pauses saving.
- Sends: nothing. No account, no analytics, no telemetry. (The optional benchmark command,
cogito-mem eval locomo-qa, which only you would run, sends benchmark questions to the LLM API you set up for it, with your own key.)
- Removes cleanly:
claude plugin uninstall cogito-mem@cogito-mem, then delete ~/.cogito-mem.
Every file, download and connection, with links to the source: What you install.
How it compares
Keep your project's rules in CLAUDE.md, and let Cogi remember what happened.
Learn more
Early access. v0.2 is new, built and tested (over 200 tests), and still being measured. Feedback and issues are very welcome.
License
MIT