"Memory for AI agents" has quietly become two different products, and picking the wrong one for your problem is expensive. Here's the split, drawn honestly.
The two kinds of memory
| Conversation memory | Product memory | |
|---|---|---|
| Remembers | What the agent and a user said to each other | What customers asked for, and what the team decided |
| Unit of storage | Facts about a user or session | Cited claims linked to raw signal (tickets, calls, threads) |
| Feeds | Chatbots, assistants, personalization | Coding agents shipping features (Claude Code, Codex, Cursor) |
| Output | Recalled facts injected into context | An executable PLAN.md with evidence, non-goals, and gates |
| Failure it prevents | “Who are you again?” | Correct code for the wrong spec |
| Examples | Mem0, Zep, built-in agent memory | Scriptonia (agent product memory) |
Mem0 and Zep are genuinely good at their half. If your agent talks to end users and needs continuity, use one. Scriptonia doesn't compete there.
Why RAG isn't the answer to either
RAG is a mechanism, not a memory. Pointing retrieval at a pile of tickets gets you paragraphs of maybe-relevant text with no deduplication, no idea which claims contradict your roadmap, and nothing an agent can execute. Product memory uses retrieval as step one, then does the work that matters: structure (typed, sourced, versioned claims), judgment (contradiction gates against the decision corpus), and output (a plan with a scope fence, not a context dump).
The test to apply to any "memory" tool
Ask three questions:
- Can every stored claim show me the customer who said it?
- Does it know what we decided not to do, and block work that contradicts it?
- Is its output something an agent executes, or something a human re-reads?
Three yeses is product memory. Anything less is a retrieval layer wearing the word.