auto-harness reads environment variables for secrets and runtime overrides that should not be checked into version control. The canonical list lives inDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/neosigmaai/auto-harness/llms.txt
Use this file to discover all available pages before exploring further.
.env.example at the repo root. Copy it to .env before your first run, then fill in the values you need:
LLM API keys
The correct key is determined automatically from theagent_model value in experiment_config.yaml. If the model name starts with "gemini", GEMINI_API_KEY is required. If it starts with "claude", ANTHROPIC_API_KEY is required. All other models fall back to OPENAI_API_KEY.
OpenAI API key. Required when
agent_model is an OpenAI model (anything that does not start with "gemini" or "claude"). Also forwarded as LITELLM_API_KEY inside BIRD-Interact runs when LITELLM_API_KEY is not set separately.Anthropic API key. Required when
agent_model starts with "claude" (e.g., "anthropic/claude-sonnet-4-20250514").Google Gemini API key. Required when
agent_model starts with "gemini".Sandbox provider keys
These variables are only required for Terminal-Bench whenenv_provider is set to "e2b" or "daytona". The "docker" provider requires no API key.
E2B sandbox API key. Required when
env_provider: "e2b" in experiment_config.yaml.Daytona API key. Required when
env_provider: "daytona" in experiment_config.yaml.Runtime control
These variables let you override experiment configuration at runtime without editingexperiment_config.yaml. They are primarily used by the benchmark runner internally, but you can also set them manually for ad-hoc runs.
Override the agent model.
TauBenchRunner and TerminalBenchRunner read this as the fallback when agent_model is not set in experiment_config.yaml. Defaults to "gpt-5.4".Override the reasoning effort level. Set automatically from
reasoning_effort in experiment_config.yaml before each run. Accepted values: "low", "medium", "high".Controls whether
TerminalBenchRunner copies agent traces to workspace/traces/. Set to "0" to disable trace saving. The runner sets this automatically to "0" for non-train splits (test and baseline all-tasks runs), preventing the coding agent from reading test-split traces.tau-bench data directory
Path to the directory where tau-bench data is stored. Defaults to
./tau2_data (relative to the auto-harness repo root). prepare.py clones the tau2-bench repository into this directory on first run if it is not already present. Override this to share the data directory across multiple experiments.BIRD-Interact overrides
These variables mirror the advanced override keys inexperiment_config.yaml. Set them as environment variables if you prefer not to hard-code paths in the config file.
Absolute path to an existing BIRD-Interact repo root or
BIRD-Interact-ADK directory. Takes effect when bird_repo is not set in experiment_config.yaml.Absolute path to a Python interpreter with BIRD-Interact-ADK dependencies installed. Takes effect when
bird_python_bin is not set in experiment_config.yaml.BIRD-Interact service ports
These variables are set automatically byBirdInteractRunner from the values in experiment_config.yaml. You can also set them directly in your shell to override defaults without editing the config.
Port for the BIRD-Interact system agent service. Defaults to
6100.Port for the user simulator service. Defaults to
6101.Port for the database environment service. Defaults to
6102.BIRD-Interact dataset size passed to the orchestrator. Set automatically from
dataset in experiment_config.yaml. Accepted values: "lite" (300 tasks) or "full" (600 tasks).Maximum clarification turns per task in
c-interact mode. Set automatically from patience in experiment_config.yaml. Defaults to 3.Postgres connection
These variables configure the Postgres connection used by BIRD-Interact.prepare.py provisions a Docker container with these defaults on first run. Override them only when pointing at an existing Postgres instance.
Postgres host. Defaults to
127.0.0.1.Postgres port. Defaults to
5432.Postgres username. Defaults to
root.Postgres password. Defaults to
123123.Required variables by benchmark
Terminal-Bench
Terminal-Bench
| Variable | Required | Notes |
|---|---|---|
OPENAI_API_KEY or ANTHROPIC_API_KEY or GEMINI_API_KEY | Yes | Match to your agent_model |
E2B_API_KEY | When env_provider: "e2b" | |
DAYTONA_API_KEY | When env_provider: "daytona" |
tau-bench
tau-bench
| Variable | Required | Notes |
|---|---|---|
OPENAI_API_KEY or ANTHROPIC_API_KEY or GEMINI_API_KEY | Yes | Match to your agent_model |
TAU2_DATA_DIR | No | Defaults to ./tau2_data; data is auto-cloned |
BIRD-Interact
BIRD-Interact
| Variable | Required | Notes |
|---|---|---|
OPENAI_API_KEY or ANTHROPIC_API_KEY or GEMINI_API_KEY | Yes | Match to your agent_model |
BIRD_REPO | No | Auto-provisioned into ./bird_interact_adk/ |
BIRD_PYTHON_BIN | No | Auto-resolved from venv inside ADK |
PG_HOST, PG_PORT, PG_USER, PG_PASSWORD | No | Auto-provisioned Docker container |