zevruna
v1.8.5
Published
Production reliability for AI agents — snapshot, diff, and CI-gate the tool contracts your agents depend on, and trace their runs.
Maintainers
Readme
zevruna
Production reliability for AI agents. Zevruna watches agent runs across models, tools, APIs and MCP, and watches the tool contracts underneath them, so a change that would break your agent fails CI instead of failing in production.
An agent can return 200 OK and still have failed. When an MCP server renames a field, nothing in
your repo changed, so no test you own can see it.
Quick start
npx zevrunaDetects servers from .mcp.json / mcp.json / .cursor/mcp.json, authorizes in your browser,
scans your call sites, and takes the first snapshot. Everything lands in the
dashboard.
No MCP servers? Then the value is execution traces, and the wizard sets those up instead of
turning you away. zevruna instrument proposes where to wrap an agent run with
@zevruna/observe.
Local and stdio servers. Zevruna polls from the cloud, so it can never reach a server on your machine and never spawns your processes. Those register as push-only: capture the contract locally and push it, once now and again from CI.
zevruna snapshot <name> --pushCommands
zevruna run the setup wizard (same as `init`)
zevruna init [--name <project>] detect servers, authorize, scan, first snapshot
[--invite <code>]
zevruna snapshot <endpoint|name> [--push] handshake a server, or a stdio one by name
zevruna remove <name> [--yes] stop monitoring a server and delete its history
zevruna diff <before.json> <after.json> classified redline (exit 1 on breaking)
zevruna check [--manifest <glob>] verify manifests (exit 1 on any violation)
[--against pinned|.zevruna]
zevruna scan --server <name> --consumer <agent>
generate a manifest from this repo
zevruna doctor [--json] verify the install (exit 1 if not ready)
zevruna instrument [--json] [--all] propose where to wrap agent runsdiff exits 1 on a breaking change and check on any violation, so both drop straight into a
CI step. check --against .zevruna runs air-gapped from committed snapshots, no account needed.
Environment
ZEVRUNA_TOKEN=zv_live_… # project token, written by the wizard to .env.zevruna
API_BASE=https://zevruna.com/api
ZEVRUNA_TELEMETRY=0 # opt out of anonymous CLI usage eventsWhat is collected
Schemas and timings only. Never arguments, never payloads, never PII. Snapshots come from
initialize, tools/list, resources/list and prompts/list, the CLI never calls a tool.
Links
- Docs
@zevruna/observe, agent execution traces@zevruna/diff, the diff engine, standalone@zevruna/client, the MCP handshake client
License
MIT
