Your agents forget.Neotoma makes them remember.

Most memory tools help agents retrieve information. None of them can prove it hasn’t been silently corrupted.

Neotoma is git for what your agents know. Versioned, diffable, replayable state across Claude, Cursor, ChatGPT, and everything else. Stop being the human sync layer.

Built for developers running agents across sessions and tools

Facts are stored privately under your control. Any agent can retrieve exactly what it needs, with full versioning and provenance.

How it’s used

Trustworthy state for AI agents11 on GitHub14 releases shipped

Running daily for 5+ months across Claude Code, Cursor, ChatGPT, and CLI. Every morning I ask my agents what I worked on yesterday, what’s due this week, and what I told a specific investor. Zero re-prompting for cross-session context. This isn’t a demo, it’s my actual operating system.

1,100+contacts
16,000+tasks
900+conversations
2,000+agent messages
380+entity types

“State integrity, not retrieval quality.”

Agentic app builder

“Very relevant problem, most people rolling their own.”

Laurie Voss, npm co-founder

“Genuinely useful for production agents, overkill for hobbyist chatbots.”

Production agent evaluator

“CI/CD for agent state.”

Tycho Onnasch, co-founder, Zest Protocol

Before & after

Same question, different outcome

Without a state layer, agents act on state they can’t verify. With Neotoma, every response reads from versioned, schema-bound state.

Contacts & people

Silently overwritten, confidently wrong

You corrected a contact's email last week. A different agent session overwrote it with the old address. Your agent sends to the wrong person, and nobody notices until it's too late.

without Neotoma
agent session · without Neotoma
$|

Product demo

Inspectable state you can version, diff, and replay

The same operations work from the CLI, the REST API, the Inspector app, or through any MCP-connected agent. Toggle between views to try each interface.

# Store a contact from any agent session

$

Neotoma evaluate page preview

Evaluate it

Let your agent decide if Neotoma fits

Your agent can read the docs, inspect the evaluation criteria, and tell you whether Neotoma fits your actual workflow before you install anything.

Copy this prompt into any AI agent to have it read the evaluation page, inspect your tool, workspace, and configuration context, then judge whether Neotoma fits your real workflow and what to persist first.

Read https://neotoma.io/evaluate. Before you answer, inspect any broader tool, workspace, and configuration context you can access so you assess my real workflow rather than just this chat. Then assess whether Neotoma fits my workflow, what data would be highest value to persist first, and what I should do next.

View evaluation page

Frequently asked questions

Platform memory (Claude, ChatGPT) is good enough - why add another tool?

Platform memory stores what one vendor decides to remember, in a format you can't inspect or export. It doesn't version, doesn't detect conflicts, and vanishes if you switch tools. Neotoma gives you structured, cross-tool state you control.

Can't I just build this with SQLite or a JSON file?

You can start there - many teams do. But you'll eventually need versioning, conflict detection, schema evolution, and cross-tool sync. That's months of infrastructure work. Neotoma ships those guarantees on day one.

Is this production-ready?

Neotoma is in developer preview - used daily by real agent workflows. The core guarantees (deterministic state, versioned history, append-only log) are stable. Install in 5 minutes and let your agent evaluate the fit.

Does Neotoma send my data to the cloud?

No. Neotoma runs locally by default. Your data stays on your machine in a local SQLite database. There is no cloud sync, no telemetry, and no training on your data unless you choose to expose the API (for example for remote MCP clients).

What's the difference between RAG memory and deterministic memory?

RAG stores text chunks and retrieves them by similarity for prompts. Neotoma stores structured observations and composes entity state with reducers; the same observations always yield the same snapshot. RAG optimizes relevance; deterministic memory optimizes integrity, versioning, and auditability.

More questions? See the FAQ