Building verifiable memory
Memory for an AI system usually means an opaque vector store that nobody fully audits. It drifts, and when it returns the wrong thing there is no clean way to ask why. We wanted a memory layer you could reason about the way you reason about a filesystem: state you own, can inspect, and can roll back.
Three constraints shaped the build. Memory belongs to the user, so the daemon runs locally and the wiki is plain markdown on disk. Every mutation is reversible, inspectable, and signed, so each operation appends a signed record rather than overwriting state in place. And the system is grounded or silent, so it never returns a fact without a source attached.
Local-first is doing real work here, not branding. Because the wiki is markdown and the facts are a store you can grep, the audit surface is the filesystem you already trust. There is no remote service to interrogate. Bring your own model and the key is injected at spawn time and never persisted, so you set the boundary of what leaves your machine, not us.
The signed record is what turns memory into something you can verify rather than merely read. An append-only chain means the history of the wiki is itself a checkable artifact. You can see when a page was compiled, which facts it drew from, and that nothing in the sequence was rewritten after the fact. Reversibility falls out of the same structure: if a mutation is a record, undoing it is another record, not a deletion that erases the evidence.
You do not have to trust us for any of this. The daemon ships under AGPL, the verifier is a separate signed binary, and the only thing you have to believe is the math. That is a harder thing to build, and it is the right bar for memory you are meant to rely on.