9 August 2026

Every AI memory tool assumes you have not started yet

I went looking at every MCP memory server I could find, because I wanted to know if what I had built was actually different from what already existed, or just differently packaged.

They vary in almost everything. Vector store, retrieval strategy, whether they distinguish an episodic log from a semantic one, how they decide what to forget. But every one I looked at agreed on something more basic than any of that: nothing exists in them until you write it there.

The assumption underneath all of them

The pattern is consistent. You install the server, the agent gets a tool for saving a memory, and from that point on, when something worth keeping happens, the agent (or you) writes a note. Ask any of them about last month and there is nothing to answer with, because last month happened before the tool existed.

That is a completely reasonable design. Deciding what is worth remembering is a real problem and writing a note is a clean way to solve it. I am not arguing it is wrong. I am pointing at what it costs: the value of the system starts at zero on install day, and everything before that is unreachable by construction, not by bug.

What was already sitting on disk

Claude Code, Cursor, Codex, Zed, Kiro and Antigravity were not built for me to eventually install a memory tool. They just write down what happened, as a side effect of running, and have been doing that since before I ever thought about this problem. Months of it, in most of our cases, sitting in plain files nobody pointed a memory system at because there was nothing there to write with.

Inventory's recall reads that instead of asking anyone to start narrating. There is no note-taking step. The corpus it searches on day one is whatever you already have on the machine, not whatever accumulates after you install it. I measured against 42,611 passages the first time I tested it seriously, and every one of them predated the feature by weeks.

The trade this makes, honestly

Reading transcripts you did not write for a memory system is messier than reading notes somebody wrote for exactly this purpose. A deliberate memory note says what mattered and why in one clean sentence. A transcript says it once, in the middle of everything else that happened that afternoon, in whatever words you actually used at the time.

Most of the engineering work described in what we learned shipping agent memory exists because of that gap. Pulling a verdict out of "yeah that fixed it" is harder than reading a field that says outcome: success, because nobody wrote that field. Nobody was thinking about a memory system when they typed it. I think that is a fair price for not asking anyone to start a habit before the tool has ever helped them once.

Where this leaves the two approaches

A note-taking memory server and a transcript-reading one are not really competing for the same job. One gets more precise the more deliberately you use it going forward. The other is worth something the moment you install it, on the condition that you were already using one of the six tools it reads, which by the time anyone is looking for a memory server, is most people.

If you are building an agent from scratch with no history behind it, a note-taking memory server is the right tool and I would not tell you otherwise. If you have been running Claude Code or Cursor for months and the value you are looking for already happened, it is sitting in files on your machine right now, and reading them is the whole idea behind Inventory.

All posts · Where each tool stores its history