Skip to main content

daimon 0.19.0: a docs site, an MCP server, and deletion you can prove

· 3 min read

daimon 0.19.0 is on PyPI, three days after 0.18. The headline is a pair of doors: the documentation site you are reading — in English and Spanish from day one — and a read-only MCP server, so hosts that speak MCP but have no hook system can still read your agent's memory. Also in the box: daimon forget ships, and a chunk cache stops failed serializes from re-buying work they already paid for.

The MCP server: memory for hosts we can't hook

Daimon's capture loop attaches to hosts through hooks. Plenty of MCP-capable tools have no hook surface — until now they simply couldn't see daimon's memory. daimon mcp serve fixes the reading half:

daimon mcp serve # JSON-RPC over stdio, blocks until EOF

Four tools, all read-only: daimon_recall (search with full provenance — trust class, author, supersession state, origin project), daimon_brief (the latest briefing, trust-tagged), daimon_projects (everything daimon has memory for), and daimon_status (capture health). Pure standard library, zero new dependencies — same deal as the rest of daimon.

Read-only is a design position, not a limitation. Writes stay with the capture pipeline, where every verbatim claim is mechanically checked against a real transcript. An agent can read memory over MCP; it cannot assert new memories into it. And the server inherits daimon's cross-project discipline: reads are project-scoped, and a project with no checkpoint gets told exactly that — never another project's content.

The MCP reference has the registration snippets for Claude Code, Windsurf, Cursor, and any generic stdio config.

daimon forget ships: deletion with a tombstone

Announced as merged in the last post — now released. daimon forget removes an item from the live checkpoint, the recall index, and the audit trail's content, while the event stream keeps a content-hash tombstone. With receipts enabled, the post-removal checkpoint is re-signed. You can prove the deletion happened without keeping what was deleted. Mechanics on the item lifecycle page.

The chunk cache: retries stop re-buying finished work

Serialization extracts memory from transcripts in chunks, and until now a failed run threw away every chunk that had succeeded — the retry paid for all of it again, in time and tokens. 0.19 adds a content-addressed cache for chunk extractions: a heal or retry reuses every chunk whose content is unchanged and only pays for what's actually missing. First slice of a longer incremental-serialization arc.

And the docs site itself

Quickstart (install to first briefing in one page), concept pages for the ideas that make daimon different — trust classes, carry and staleness, receipts, item lifecycle — host guides, configuration, team memory. Every page in Spanish as well as English, written for Spanish-reading developers rather than machine-dumped. This blog (with RSS) is the canonical home for announcements; the README now just points here.

Upgrade

uv tool install --force 'daimon-briefing[pretty]'

Full details in the changelog. If something breaks, the issue tracker reads every report.