Every memory is checked.
Before your agent uses a memory, bettermemory holds it against your code and its own signed log, and reports what it finds.
A search result for a memory whose file has since been deleted1
"snippet": "The session-auth token validator lives at `src/auth/session.py` and rejects expired tokens before the request reaches the...",
"staleness_verdict": "spot_check_recommended",
"path_drift": {
"missing": ["src/auth/session.py"]
}
The log check after a memory was written into the store without bettermemory2
$ bettermemory log verify bettermemory log verify: tampered fold diverged memories: 1 unaccounted, 0 missing unaccounted 01M768Z9PXKQ4T7W2C5N8HBD3F
It stays on your machine.
One file
The whole store, on your disk
One model
Your agent, and no second model
No account
Nothing to sign up for
No cloud
The server runs locally
Install with one prompt.
Paste it into your agent, which installs the newest 9.0 candidate and sets it up.
The prompt
Install the bettermemory 9 pre-release: run `uv tool install 'bettermemory>=9.0.0rc1'`, then do the manual setup in https://github.com/0Mattias/bettermemory/blob/v9/docs/clients.md, hooks included, calling `bettermemory` where the plugin's hooks call `uvx bettermemory`. If the 8.x plugin is installed, ask me to remove it first.
Works with
- Claude
- Codex
- Cursor
- Gemini
- Copilot
- Cline
On Claude Code, hooks bring memory to the prompt. The other agents reach it through the tools.
The Claude Code plugin installs 8 until 9.0 is final.
Open source, MIT licensed.