agentstategraph
A versioned state store for AI agents: content-addressed, branchable, and blameable. Every commit records structured intent — who made the change, on whose authority, why, and with what confidence — so agent work can be audited and governed mechanically.
This is the high-level Repository API. It ties together
agentstategraph-core (types
and algorithms) and
agentstategraph-storage
(pluggable backends), and re-exports both as agentstategraph::core and
agentstategraph::storage.
Quick start
use ;
use SqliteStorage;
use ;
let repo = new;
repo.init?;
// Every write is an atomic commit carrying intent metadata.
repo.set?;
// Branches are instant. Explore on one, then merge it back.
repo.branch?;
repo.set?;
let changes = repo.diff?;
repo.merge?;
for commit in repo.log?
Features
| Feature | Default | What it enables |
|---|---|---|
sqlite |
yes | The SQLite backend (SqliteStorage, bundled SQLite) |
The in-memory and Postgres backends are features of
agentstategraph-storage.
The crate family
| Crate | Purpose |
|---|---|
agentstategraph-core |
Objects, commits, paths and merge — no I/O |
agentstategraph-storage |
Storage traits and the memory, SQLite and Postgres backends |
agentstategraph-tasks |
Shared plans and tasks with proofs |
agentstategraph-policy |
Authorization and cost-of-change gating |
agentstategraph-taint |
Taint, quarantine and watch markers |
agentstategraph-reminders |
Pull-based agent reminders |
agentstategraph-migrate |
Schema migrations for existing stores |
agentstategraph-mcp |
MCP server and HTTP API (cargo install agentstategraph-mcp) |
agentstategraph-ffi |
C ABI for other languages |
agentstategraph-wasm |
WASM bindings for browsers, Deno and Node |
More
- Project README
- RFC — data model, intent lifecycle, authority and delegation
- Examples
License
Licensed under either of Apache License, Version 2.0 or MIT license, at your option.