Developers · Autessa Evaluations
Sandbox CLI
The `autessa sandbox` CLI is automated testing for AI agents from the terminal. Create test sets with their cases, define simulated-user policies, start a run against the draft or a published version, and poll for graded results. Every case runs as a real, headless conversation and is graded with the platform evaluation and, when the case has one, the expected-outcome judge.
The problem
A test you have to click through is a test that gets skipped
Agent changes ship fast: a new instruction, a new tool, a new model. The Sandbox CLI lets you keep test sets as data and run them from a script before you publish, so "did this break anything?" has an answer in a pass rate, not a hunch.
What you get
- Autessa test sets hold test cases for one agent: an opening user message, prompt template variables and an optional expected outcome.
- Simulated-user policies are reusable personas with a goal, behavior instructions, stop conditions and max turns (default 6, capped at 10).
- runs-start tests the draft by default or a published version with --versionNumber.
- Pass --policyIds to run every case once per persona, --omitPolicy for single turn, or --sampleSize for a random sample.
- Runs are asynchronous: runs-start returns a PENDING run, then poll runs-get until COMPLETED or FAILED.
- A run passRate is passed divided by all cases, so errors count against it; sandbox faults are counted separately.
- Agents that need a browser or local tool, or ask the user for private arguments, cannot be tested headlessly; those cases end with UNSUPPORTED_INTERACTION.
How it works
How does sandbox cli work in Autessa Evaluations?
Create a simulated user
policies-create with a name and persona, plus goal, behavior, stop conditions and max turns.
Create a test set
test-sets-create for an agent, with its cases in the same call and an optional default policy.
Start a run
runs-start with the test set id, and optionally a version, personas or a sample size.
Poll and read
runs-get returns every case result: status, pass or fail, turns used, stop reason and the evaluation.
Every option
Sandbox commands
| Option | What it does |
|---|---|
| test-sets-create / update / get / list / delete | --agentId, --name, --description, --defaultPolicyId, --cases (name, initialMessage, promptTemplateVariables, expectedOutcome). |
| policies-create / update / list / delete | --name, --persona (required), --goal, --behaviorInstructions, --stopConditions, --maxTurns, --model. |
| runs-start | --testSetId (required), --versionNumber, --policyIds, --omitPolicy, --sampleSize. |
| runs-get | One run with every case result; the method to poll after runs-start. |
| runs-list / runs-case-get / runs-delete | List runs newest first, fetch one case result with its run summary, or delete a run. |
Permissions
Who can do what?
| Who | Can |
|---|---|
| CLI user | Manage test sets, policies and runs in the active company. |
| Agent viewer (READ) | Test-run the agent. |
| Team members | See the same test sets and runs in the Sandbox and the agent’s Eval history. |
Connected
How it connects to the rest of Evaluations
FAQ
Questions about sandbox cli
Do sandbox runs call my real tools?
Yes. Each case is a real, headless conversation against the agent, so point tools with side effects at test data first.
Can I test a published version, not just the draft?
Yes. Pass --versionNumber to runs-start; omit it to test the current draft.
How do I run a quick check on a large test set?
Pass --sampleSize to run only that many cases, picked uniformly at random.
Why did a case end with UNSUPPORTED_INTERACTION?
The agent needed a browser or local tool, or asked the user for a private argument, which a headless run cannot provide.
100% customizable, code and all
Make Autessa Evaluations fully your own.
Use it out of the box, then change anything. Ask Autobot, Autessa’s AI builder, for a new field, screen, report, workflow or agent and it builds it into your copy of the app. Or open the code and edit it yourself. Nothing is locked: the app, its data and its code are yours.
Start free and make it yours