Designing Memory for Long-Lived Agents
Why retrieval-augmented generation is not enough, and what a real memory substrate for autonomous agents might look like.
Most agent memory systems today are vector databases with a thin wrapper. They store embeddings of past conversations and retrieve the nearest neighbors when prompted. This works for chatbots, but it fails for agents that must operate over weeks or months.
The first problem is time. A conversation log treats every turn as equally important, but agents need to forget strategically. Irrelevant details should decay; critical facts should consolidate. Human memory is not a search index; it is a reconstruction process shaped by goals, emotions, and sleep. Machine memory should be similarly dynamic.
The second problem is structure. Vector retrieval returns raw text. Agents need causal models: if this, then that. They need schemas for entities, relationships, constraints, and plans. A memory system should feel more like a knowledge graph that evolves than a document store.
The third problem is explainability. When an agent retrieves a memory to justify a decision, we should be able to trace why that memory mattered. Provenance, confidence, and retrieval rationale must be first-class citizens.
MemKit is our attempt to build memory as a system rather than a search problem, starting with the part that mattered most: knowing when a new fact contradicts an old one, before worrying about retrieval quality at all. It's a single flat store today, not a multi-tier one -- a fact is active or it's superseded, classified on write by a cheap heuristic with a small model as backup for the ambiguous cases. No semantic search yet, on purpose. We are still early, but the ordering feels right: solve truth before you optimize similarity.