9 on GitHub13 releases shipped

Your agents forget. Neotoma makes them remember.

Your contacts disappear between sessions and tools. Neotoma stores them once, versioned and queryable, across every agent you run — so you stop re-explaining your world.

“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

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

Before & after

Same question, different outcome

Without a state layer, agents return stale or wrong data. With Neotoma, every response reads from versioned, schema-bound state.

Contacts & people

Lost contact, broken handoff

You mentioned someone in a call last week. Your agent in Cursor has no idea who they are. You re-explain every person, every session, across every tool.

without Neotoma
agent session · without Neotoma
$S|

Who this is for

You run AI agents across tools and sessions......and become the human sync layer 😵

Stop spending real effort re-prompting context, patching state gaps, and compensating for memory that doesn’t persist across AI tools and custom scripts. The cost shows up differently depending on what you’re doing.

Neotoma evaluate page preview

Evaluate it

Let your agent decide if Neotoma fits

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