Cursor forgets everything between sessions, so you keep re-explaining the same decisions, lessons and project context. I built PMB to fix that: a local-first memory that lives in SQLite on your machine and feeds the right context back to the agent over MCP. No cloud, no API keys, no LLM call on the read path.
Your projectβs memory, visualized - entities and connections captured automatically as you work.
GitHub: GitHub - oleksiijko/pmb: Local-first persistent memory for AI coding agents (Claude Code, Cursor, Codex) over MCP. Decisions, lessons and facts live in one SQLite file on your disk. Offline, multilingual. Β· GitHub
Site: https://pmbai.dev
What it does
- Remembers decisions, lessons (βwe use X, never Yβ), personal facts, project structure, even PDFs - across restarts, model switches and agent switches.
- Hybrid recall (BM25 + vectors + entity graph) in ~35 ms warm; writes return in under a millisecond.
- Multilingual out of the box - a Russian query finds an English fact, no per-language setup.
- Honest about impact: a local dashboard shows which lessons actually changed outcomes, instead of claiming β+X%β.
Using it with Cursor
Cursor is MCP-native, so wiring it is one command:
pip install pmb-ai
pmb connect cursor # adds the MCP server + appends the read-first rules
pmb warmup # preload the model so the first recall is instant
Cursor has no lifecycle hooks (unlike Claude Code), so on Cursor PMB works two ways: the agent calls recall() / prepare() itself (the rules pmb connect writes nudge it to), and a git observer captures the write side automatically:
pmb ambient-watch . # journals your work as you edit, no manual record step
pmb dashboard # local web UI: graph, timeline, lessons (127.0.0.1 only)
Timeline - everything the agent did and learned, newest first.
Why local-first
The whole workspace is a folder under ~/.pmb/. 100% offline, zero telemetry, secrets auto-redacted at write time. Copy it to a USB stick, sync it, or push the encrypted bundle to a public repo - your call. Apache-2.0.
Would love feedback from Cursor users - especially on the MCP-only ambient-write flow. Happy to answer anything in the thread.
if it saves you a re-explanation.

