Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
zavora-cli
███████╗ █████╗ ██╗ ██╗ ██████╗ ██████╗ █████╗
╚══███╔╝██╔══██╗██║ ██║██╔═══██╗██╔══██╗██╔══██╗
███╔╝ ███████║██║ ██║██║ ██║██████╔╝███████║
███╔╝ ██╔══██║╚██╗ ██╔╝██║ ██║██╔══██╗██╔══██║
███████╗██║ ██║ ╚████╔╝ ╚██████╔╝██║ ██║██║ ██║
╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
Your AI agent, in the terminal. Built on ADK-Rust.
Install
Requires Rust toolchain (rustup, cargo).
Set Up a Provider
Export at least one API key:
# or: GOOGLE_API_KEY, ANTHROPIC_API_KEY, DEEPSEEK_API_KEY, GROQ_API_KEY
Or use Ollama locally with no key needed:
OLLAMA_HOST=http://localhost:11434 # optional, this is the default
Usage
# Ask a one-shot question
# Interactive chat
# Workflows
# Health check
Chat Commands
Once in chat mode, these slash commands are available:
| Command | Description |
|---|---|
/help |
Show available commands |
/status |
Current provider, model, session info |
/usage |
Context window usage breakdown by author |
/compact |
Compact session history to reclaim context |
/tools |
List active built-in and MCP tools |
/mcp |
MCP server diagnostics |
/checkpoint save <label> |
Save session snapshot |
/checkpoint list |
List saved checkpoints |
/checkpoint restore <tag> |
Restore to a checkpoint |
/tangent start |
Branch into exploratory tangent |
/tangent end |
Return to main session |
/todos list |
List todo lists |
/todos show <id> |
Show a todo list |
/todos clear |
Remove finished todos |
/delegate <task> |
Run isolated sub-agent prompt |
/provider <name> |
Switch provider mid-session |
/model [id] |
Switch model or open picker |
/agent |
Trust all tools for the session (agent mode) |
/exit |
Exit chat |
Built-in Tools
The agent has access to these tools during execution:
| Tool | Purpose |
|---|---|
fs_read |
Read files/directories with bounded controls and workspace path policy |
fs_write |
Create, overwrite, append, or patch files (confirmation required) |
execute_bash |
Run shell commands with safety policy (read-only auto-allowed) |
github_ops |
GitHub operations via gh CLI (issues, PRs, projects) |
todo_list |
Create/complete/view/list/delete task lists (persisted to .zavora/todos/) |
Context Management
/usageshows real-time token breakdown by author (user, assistant, tool, system)- Prompt shows ⚠ (>75%) or 🔴 (>90%) when approaching context limits
/compactmanually summarizes history to reclaim space- Auto-compaction triggers when configured thresholds are exceeded
Checkpoints and Tangents
/checkpoint save <label>snapshots session state — persisted to.zavora/checkpoints.jsonacross restarts/tangent startbranches the session for exploratory work;/tangent endmerges or discards
Delegation
/delegate <task> runs a prompt in an isolated sub-agent session and returns the result inline.
Configuration
Profiles
Runtime defaults live in .zavora/config.toml:
[]
= "openai"
= "gpt-4.1"
= "sqlite"
= "sqlite://.zavora/sessions.db"
= "disabled"
= "mcp-only"
= 0.75
= 0.50
= true
= "disabled"
= "disabled"
= ["password", "secret", "api key"]
Agent Catalogs
Configure agent personas separately from profiles. Precedence: implicit default → global ~/.zavora/agents.toml → local .zavora/agents.toml.
[]
= "Code-focused assistant"
= "openai"
= "gpt-4.1"
= "always"
= ["fs_read", "fs_write", "execute_bash"]
= ["execute_bash.rm_*"]
Persistent Sessions
Advanced Features
Tool Policy and Hooks
Control tool execution with confirmation modes, aliases, allow/deny lists, and hooks:
[]
= "mcp-only" # never | mcp-only | always
= { = "fs_read", = "fs_write" }
= 45
= 2
[[]]
= "block-rm"
= "execute_bash"
= "rm -rf"
= "block"
= "Destructive rm blocked by hook policy"
MCP Integration
Discover and invoke external tool servers per profile:
[[]]
= "ops-tools"
= "https://mcp.example.com/ops"
= true
= 15
= "OPS_MCP_TOKEN"
= ["search_incidents", "get_runbook"]
Guardrails
Independent input/output content policy (disabled | observe | block | redact):
Retrieval
Pluggable context injection from local documents or semantic search:
Telemetry
Structured JSONL telemetry enabled by default:
Evaluation Harness
Server Mode and A2A
Endpoints: GET /healthz, POST /v1/ask, POST /v1/a2a/ping.
Development
Sensitive Config
profiles show,doctor, andmigrateredact session DB URLs by default- Use
--show-sensitive-configfor local debugging when full values are needed
Documentation
| Document | Description |
|---|---|
CHANGELOG.md |
Release history |
WORKING_STYLE.md |
Sprint conventions and definition of done |
docs/PARITY_MATRIX.md |
Feature parity status matrix |
docs/PARITY_BENCHMARK.md |
Parity benchmark scenarios and scoring |
docs/GA_SIGNOFF_v110.md |
v1.1.0 RC sign-off |
docs/PHASE2_QCLI_PARITY_PLAN.md |
Phase 2 parity architecture |
docs/AGILE_RELEASE_CYCLE.md |
Release process |
docs/ADK_CAPABILITY_MATRIX.md |
ADK capability coverage |
docs/RETRIEVAL_ABSTRACTION.md |
Retrieval interface details |
docs/MCP_TOOLSET_MANAGER.md |
MCP schema and discovery flow |
docs/GUARDRAIL_POLICY.md |
Guardrail modes and enforcement |
docs/SERVER_MODE.md |
Server API and A2A flow |
docs/SECURITY_HARDENING.md |
Security controls |
docs/DIFFERENTIATION_ROADMAP.md |
Current and planned differentiators |
Current version: v1.1.3