Skip to main content

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​

FieldRequiredDescription
projectyesCustomer project slug or name.
modenoadvisory or blocking. Defaults to advisory.
api_urlnoAPI URL override. Production is the default.
api_key_envnoEnv var for API key. Defaults to WENDELL_INKPASS_API_KEY.
agentnoAgent name shown in results.
agent_commandyes for hosted runtimeCommand that runs the local agent adapter.
agent_timeout_secondsnoMaximum seconds Wendell waits for one adapter invocation. Defaults to 120.
upload_tracesnoUpload 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:

  1. The current working directory.
  2. The config file directory.
  3. 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"