Configuration
wendell run reads a TOML config file, usually wendell.toml.
Minimal hosted-suite config
project = "refund-agent"
mode = "advisory"
agent = "refund_agent"
agent_command = "python scripts/wendell_agent_adapter.py"
agent_timeout_seconds = 120
upload_traces = true
[gates]
suite_min_score = 0.80
scenario_min_score = 0.75
critical_failures_allowed = 0
When you run a hosted suite with wendell run --suite, Wendell resolves the
locked runtime assets from the published suite. Production configs should name
the suite at the command line and keep internal runtime identifiers out of
wendell.toml.
Fields
| Field | Required | Description |
|---|---|---|
project | yes | Customer project slug or name. |
mode | no | advisory or blocking. Defaults to advisory. |
api_url | no | API URL override. Production is the default. |
api_key_env | no | Env var for API key. Defaults to WENDELL_INKPASS_API_KEY. |
agent | no | Agent name shown in results. |
agent_command | yes for hosted runtime | Command that runs the local agent adapter. |
agent_timeout_seconds | no | Maximum seconds Wendell waits for one adapter invocation. Defaults to 120. |
upload_traces | no | Upload traces/results. Defaults to true. |
Internal compatibility fields for local/offline development are intentionally
omitted from this reference. Production projects should use hosted suites and
wendell run --suite.
If you are writing a local JSON suite by hand, see the
Assertions Tutorial for the suite field and assertion file
format.
Gates
[gates]
suite_min_score = 0.90
scenario_min_score = 0.85
critical_failures_allowed = 0
In advisory mode, failed gates are reported but the process exits successfully.
In blocking mode, failed gates return a nonzero exit code.
Environment files
The CLI loads .env files from:
- The current working directory.
- The config file directory.
- The project directory resolved from the config.
Use this for local non-secret adapter settings. Keep production secrets in your CI secret store.
Agent timeout
Wendell waits up to 120 seconds for each agent_command invocation by default.
Increase this when your production agent legitimately needs more time for hosted
tool calls or long-running workflows:
agent_timeout_seconds = 300
Agent command
agent_command is parsed into command-line arguments and executed directly,
without a shell. Use an executable plus arguments:
agent_command = "python scripts/wendell_agent_adapter.py --profile production"
Do not put shell-only behavior in this value. For pipes, redirects, &&,
command substitution, or environment setup, wrap the logic in your adapter
script or set environment variables in your shell or CI workflow.
API URL override
Production is the default API target. Only pass an API URL when you are using a staging, preview, or local API.
wendell run \
--suite refund-agent-regression \
--api-url http://localhost:8000
You can also set an override in wendell.toml:
api_url = "http://localhost:8000"