The contract is the differentiator: the vault is canonical and hand-editable, the DuckDB index is disposable, and recall carries project, validity and permalinks so an agent can tell current local evidence from cross-project history. remember and recall are bound together — a successful write is immediately recallable — which is the property most memory tools quietly lack.
A durable memory server for coding agents: it captures context as inspectable Markdown with provenance, indexes it in a disposable DuckDB cache, and recalls the most relevant pieces with citations.
- remember atomically writes a Markdown note and updates the index under one writer lock, so a save is immediately recallable
- recall and search return context by meaning, fusing BM25 and semantic vectors with reranking
- build_context returns a note plus its wikilink neighbours; recent lists the latest notes
- The Markdown vault is canonical — edit a fact by hand and the next reconciled read honours it; the DuckDB index is a rebuildable cache
- One configured vault is shared across Claude Code, Codex, Cursor, OpenCode and other MCP hosts
- Credential redaction, deduplication and importance-gating before automated writes; superseded facts are demoted, not deleted
Uv, since the plugin launches through uvx. The default vault is ~/agentcairn, created on first use; the first local run downloads and warms the embedding and reranking models. Install as a first-class plugin per host — for example claude plugin install agentcairn@agentcairn — which bundles the MCP server, the memory skill and the host hooks. Local by default, stdio transport, no telemetry.
One command — uvx agentcairn
