I started ModelBrain because I kept running into the same wall: every AI assistant I used forgot things between sessions, or it remembered only inside one vendor's cloud, priced by the gigabyte, with no real answer to the question of what "forgetting" a memory actually meant. Building a local-first memory layer meant I had to get specific about a question most memory products never answer directly. Not "how much can it store," but "does the right fact come back when you actually need it." Those turn out to be very different benchmarks.

Storage is not memory

Most memory products are evaluated the way a database is evaluated: write throughput, index size, query latency. A vector store holding ten million embeddings and returning a match in forty milliseconds looks impressive on a spec sheet. None of those numbers tell you whether the system still knows, three weeks later, that you switched your dentist, or whether it surfaces the old dentist's name because that embedding is still sitting there, still a close match, still wrong.

That gap is easy to miss because same-session recall is trivial. Ask an assistant something you told it two minutes ago and almost any system gets it right. The test that matters happens after time passes, after the conversation has moved on to other topics, and after you ask using different words than the ones you used to state the fact in the first place.

The recall test I actually run

So that's the test I built ModelBrain around: write a fact, let real time pass rather than staying in the same session, then query for it with a reworded prompt that shares almost no vocabulary with the original statement. A system that can only find a fact when you phrase the question the way you phrased the answer isn't doing recall. It's doing string matching with extra steps.

The second half of the test matters just as much: what happens when a fact changes. Tell the system something, then tell it something that supersedes it, then ask again. The correct answer is the newer fact, cleanly, with no trace of the old one leaking back in. Plenty of memory systems pass the first half of this test and fail the second, because appending is easy and reconciling is not.

A memory system that can only find a fact when you ask it the way you told it isn't doing recall. It's doing string matching with extra steps.

Why we don't charge you to keep more

Most commercial memory products charge by the gigabyte stored, for everything, which rewards the vendor for you keeping more, not for the system answering correctly, and quietly pushes the whole category toward "never delete, hope the ranking model sorts it out" instead of toward the harder work of reconciling facts when they change. ModelBrain runs entirely free when the vault stays local: no account, no storage meter, nothing billed for how much you keep on your own device. The only thing that costs money is optional cloud sync and backup, billed at a flat 5 cents per gigabyte. Either way, the question I actually optimize for isn't how much the vault holds. It’s whether the right fact comes back when you need it.

What this means if you're building on an AI agent

If you're evaluating a memory layer for your own product, ask for the recall-after-drift numbers specifically. Not "how fast does it retrieve," but "what fraction of facts survive a reworded query three weeks later, and what happens when two facts contradict." Most vendors won't have that number ready, because almost nobody's asked for it yet. That's the whole point of writing this down.