For AI agents
Give your agents a database they can't destroy
An agent session gets its own branch: a real MongoDB database with its own connection string, every write attributed to the agent, and one command to take it all back. Production is never in the blast radius.
1
Open a sandbox
Fork, checkout, and TTL-stamp in one command: an isolated physical MongoDB database with its own connection string. Expired sandboxes reap themselves — storage included.
$ argon sandbox create -p app --ttl 1h2
Point the agent at it
Any driver connects — it's a real mongod, so indexes, aggregations, and transactions all work. Validated in CI with real pymongo and mongoose workloads, capture verified byte-for-byte.
$ agent --db mongodb://…/argon_br_9f2c3
Every write is on the record
Change streams capture each write with full before/after images and the actor that made it. The append-only log is your audit trail.
$ argon diff -p app -b agent-run4
Merge it — or undo it
argon merge preview persists a reviewable plan; apply executes it exactly once, conflicts never resolved silently. Or revert the agent's whole session — undos are new history: auditable, undoable in turn.
$ argon undo -p app --actor agent:x --from-lsn 5001How undo works
Compensation, not time travel backwards
For every document the session touched, Argon restores its pre-session state (inserts compensate to deletes). Compensations are written as new, attributed history — every undo is audited and reversible — and --dry-run shows exactly what would change, and what conflicts, before touching anything.
Model Context Protocol
Agents drive the whole loop themselves
argon mcp exposes the workflow as thirteen MCP tools over stdio: open a sandbox (returns the connection string), list branches, connect, diff, preview and apply merges, undo with dry-run, snapshot, pin, fork a sandbox from a pin, keep or discard. The server supervises a change-stream ingester for every sandbox it hands out, so agent writes become versioned history with no babysitting.
$ claude mcp add argon -- argon mcpClaude Code opens its own sandbox before risky data work, then merges or discards it — undo included.
Also in the toolbox
LangGraph checkpointer
shippedFork and rewind conversation state the way you branch data — pip install "argon-agents[langgraph]", alongside a Mem0 factory, on the REST API.
Eval dataset pinning
shippedargon pin freezes a named dataset state that GC and reset can never touch. Fork a sandbox from the pin per eval run — every run sees identical input, even while the live corpus keeps moving.