Episodic store
14,344 episodes at v1's June 2026 measurement: every session, commit, note and decision, timestamped with its source. SQLite-backed: one file, trivially backed up, no cloud dependency.
← Back Case study · Agent platform Self-hosted · evolved into v2
One system remembers everything I work on, and acts on it. Every coding session, commit, voice note and email lands in a persistent memory that a fleet of agents briefs from, triages with, and reflects on, behind human approval gates, on my own hardware. I designed it, built it, and used it every day.
00 / 04Context
Knowledge work leaks memory. A decision made in one coding session is invisible to the next; a voice note never meets the commit it explains; the context that made last month's choice sensible evaporates when the window closes. LLM assistants make this worse: each conversation starts from zero.
The brief I set myself: give agents real memory: one store that captures everything worth remembering, retrieval that works by meaning, and agents that act on it, with two hard constraints: it runs on my own hardware, and nothing outward happens without my approval.
01 / 04System
One loop, five stages, capture to action. Everything is an episode: a timestamped unit of memory with its source attached. Episodes are embedded for retrieval, distilled into a knowledge graph, and served back to every tool that needs context.
Coding sessions, git commits across every configured repo, transcribed voice notes, mail-triage decisions, ingested news: everything worth remembering, with provenance.
Every episode embedded (bge-m3) into a local vector index: recall works by meaning, not keywords.
A local model extracts entities and relations into a living knowledge graph; a nightly deep-sleep agent clusters it into community summaries.
Context follows the work: session-start injection, entity cards, and a local HTTP API any tool can query.
A fleet of scheduled agents (briefing, triage, reflection) drafts; I decide. Every outward action sits behind a human approval gate.
02 / 04Memory
Not a chat log: a queryable, compounding store that gets more useful the longer it runs, because retrieval works by meaning and the graph maintains itself.
14,344 episodes at v1's June 2026 measurement: every session, commit, note and decision, timestamped with its source. SQLite-backed: one file, trivially backed up, no cloud dependency.
Recall by meaning, not keywords: asking about a topic surfaces the sessions and commits that actually dealt with it.
11,455 entities and 6,465 relations, distilled by a local model (people, projects, repos, topics), so the system knows not just what happened, but how things connect.
A nightly agent clusters the graph and writes community summaries: the themes of the week, discovered rather than filed. Memory that organises itself while I sleep.
03 / 04Result
Every session starts with context from the last one; every commit and note lands somewhere retrievable. The compounding effect is real within weeks.
Human-in-the-loop approval on every outward action is what made a fleet of autonomous agents livable: drafts flow freely, actions wait for me.
One SQLite file, local embeddings, local extraction models: private by construction, backed up in seconds, no cloud dependency to rot.
v1 ran daily through the first half of 2026 and was archived in July when the architecture converged into a leaner, headless successor, which carries the same memory forward and is in daily use today.