Human Approval, Agent Ownership, and Audit Trails for AI Agents
Contro1 helps AI agents request human approval, follow organizational policies, track ownership, maintain agent inventory, and create audit-ready evidence before sensitive actions.
Tooling
Install and use the contro1 CLI to register AI agents, create approval requests, push AI inventory, retrieve evidence and traces, and test workflows before using the SDK or API.
Updated Jul 20, 2026
contro1 puts approvals, Control Map routing checks, quorum, decision waits, AI inventory, traces, and evidence into the terminal workflows where coding agents, scripts, CI jobs, and developers already work.
The Contro1 CLI is developer tooling for putting approval control directly in an agent workflow. It gives developers and coding agents a terminal entry point for agent identity, Control Map previews, role-based approval requests, quorum, evidence, traces, and inventory before a full SDK/API integration exists.
Start with the CLI when you want to prove an agent workflow end to end: register the agent, ask a human before it acts, wait for the decision, and pull the audit-ready record afterward.
For coding agents and developer workflows, the CLI can also put approval in front of a local command. That is an important use case, but it is one capability inside the broader agent integration workflow.
contro1 is a single, dependency-free binary. Install it with one line - no build step. The same binary works on Windows, macOS and Linux (amd64 and arm64).
The install script is a small convenience wrapper that downloads the official contro1 binary from GitHub Releases. You can inspect it before running it at https://contro1.com/install.sh (PowerShell: https://contro1.com/install.ps1).
Prefer to download manually? Grab the archive for your OS from the GitHub Releases page, extract it, and put the contro1 binary on your PATH.
Run contro1 auth login --mode agent. The browser flow stores a scoped token in the OS credential store. Agent and observer tokens last 90 days; operator tokens are separate, interactive, and expire after 8 hours.
No browser on the machine? Use contro1 auth login --no-browser: the CLI prints a link you open on any device, and you paste back a short one-time code.
Register the agent once so future requests, traces, and evidence can be attributed to it. This is useful for coding agents, support agents, workflow agents, and custom internal agents.
Create an approval request from the terminal and attribute it to an agent. The CLI can then block until the assigned human approves, rejects, or the request times out.
This is the fastest way to test a real Contro1 approval flow before you wire the same behavior through an SDK or direct API call. Use contro1 ask for a free-text human response; it is not an operator-to-agent clarification round.
Use Control Map when the agent or operator needs to preview whether the requested role, mapping, shift coverage, fallback reviewers, and quorum can be satisfied right now.
This is especially useful for coding agents and CI workflows that want a clear routing reason before or alongside creating the approval request. The request itself remains the execution gate.
The CLI exposes the non-admin routing fields most agents need: required role, SLA, quorum, approval roles, case ids, idempotency ids, trace ids, and policy context.
When --required-approvals is greater than 1 and no approval mode is specified, the CLI uses threshold mode so the quorum is enforced instead of collapsing to a single approval.
For advanced integrations, pass the same JSON body you would send to POST /requests or POST /requests/control-map. This keeps complex policies, protocol fields, tool calls, sub-agents, retrieved context, and response schemas versioned in your agent repository.
You can also attach individual JSON fragments when the CLI flags cover most of the request but one field is structured.
Give your agents access to traces directly from the CLI for smarter analysis and faster debugging.
After a decision, pull the evidence packet and execution trace linked to the request. This is the reviewable record that lets teams understand which agent asked, who decided, and what happened next.
Update your AI registry straight from the terminal - no dashboard upload needed. Point the CLI at a JSON file, or pipe JSON in from a scanner. Contro1 updates the registry and recalculates your readiness score.
The file can be your scanner's raw output, or wrapped as { "inventory": { ... } } - both work. Use "-" to read from stdin.
For coding agents and developer workflows, contro1 run asks for approval, waits for the decision, and runs a local command only if it is approved. It records the command, working directory, git branch and commit, approver, and exit code.
Use it when the agent action is naturally represented as a shell command, such as a deploy, migration, code generation step, or script.
Read non-sensitive organization, API-key, webhook and integration metadata, plus the current approval queue. The CLI never reveals API keys, webhook secrets, or integration tokens.
Every command supports --format table|json|yaml (table for humans, JSON automatically under CI) and --quiet. In JSON/YAML mode, status messages are suppressed so stdout stays parseable. Exit codes are stable so scripts and agents can branch on them.
| Exit code | Meaning |
|---|---|
| 0 | success |
| 1 | general error |
| 2 | bad arguments |
| 3 | auth error (not logged in / token invalid or revoked) |
| 4 | insufficient scope |
| 5 | request denied |
| 6 | timeout |
| 7 | network error |
Yes. The CLI is self-describing, so an agent does not need to read external docs to act safely. It can discover the full command tree, understand its own permissions, and confirm the current state - all in machine-readable JSON.
A good first move for an agent is: run contro1 doctor and contro1 whoami --scopes to learn what it is allowed to do, then contro1 help to discover commands, then add --quiet --format json to any command it runs.
The CLI token is scoped on purpose. It can run the developer and agent workflow, but it cannot perform destructive organization administration. Four invariants hold:
The connector creates the runtime gate. The operating model around it defines which actions pause, which owner receives the decision, how a timeout escalates, and where the outcome is recorded across agent frameworks.
runtime human approval for AI agents · enterprise AI agent control plane
No. The CLI uses a scoped token (cli_operator_token). It can register agents, create and follow approvals, push the AI inventory, read evidence and traces, and gate local commands when needed, but it cannot manage users, roles, departments, secrets, API keys, integrations or platform settings. Those stay in the dashboard.
No. The main purpose is giving agents a terminal-native approval workflow: register agents, preview routing, create approval requests, push inventory, and retrieve evidence and traces. contro1 run is an important helper for coding agents and developer workflows when the action is a local command.
Call contro1 requests create and contro1 requests wait from the agent workflow. If the action is a local command, you can also wrap it with contro1 run --requires-approval -- <command>. The action only proceeds after a human approves, and the decision is recorded as evidence.
In your OS keychain (Keychain, Credential Manager, or Secret Service), with a 0600 file fallback. Tokens last 90 days and can be revoked anytime with contro1 auth tokens revoke or from Settings -> APIs & Webhooks.
Set the CONTRO1_TOKEN environment variable to a token value. The CLI uses it directly without touching the keychain, and output defaults to JSON when CI is set.
Contro1 helps AI agents request human approval, follow organizational policies, track ownership, maintain agent inventory, and create audit-ready evidence before sensitive actions.
Learn how to create, inspect, and cancel Contro1 requests for approvals, clarifications, and escalations.
Validate signed Contro1 callbacks and safely resume AI workflows after approvals, rejections, expirations, or escalations.
Learn when AI agents should require human approval, what actions should stay gated, and how to design HITL for production workflows.
Compare the best AI agent control plane tools for 2026, including Contro1, Microsoft Agent 365, Galileo Agent Control, ValidMind, Permit.io, and observability platforms. See what each layer controls before an agent acts.