config.toml lives at the root of your Action Llama project. All sections and fields are optional — sensible defaults are used for anything you omit. If the file doesn’t exist at all, an empty config is assumed.
Full Annotated Example
Field Reference
Top-level fields
[harness] — Default Agent Harness
Selects the default harness used to execute agents. This can be overridden per-agent in agents/<name>/config.toml.
pi for the default multi-provider runtime with model fallback chains. Use claude to run the agent through the Claude CLI harness instead. The claude harness uses the agent’s primary model only, so any additional models listed for fallback are ignored.
[models.<name>] — Named Models
Define models once in config.toml, then reference them by name in each agent’s SKILL.md frontmatter. Agents list model names in priority order — the first is the primary model, and the rest are fallbacks tried automatically when the primary is rate-limited or unavailable.
config.toml:
claude harness, configure the agent’s primary model as an Anthropic Claude model. The Claude CLI harness runs that first model directly rather than using the full fallback chain.
[local] — Docker Container Settings
Controls local Docker container isolation. These settings apply only to agents using the default container runtime — they are ignored for agents using the host-user runtime.
[gateway] — HTTP Server
The gateway starts automatically when Docker mode or webhooks are enabled. It handles health checks, webhook reception, credential serving (local Docker only), resource locking, and the shutdown kill switch.
[webhooks.*] — Webhook Sources
Named webhook sources that agents can reference in their webhook triggers. Each source defines a provider type and an optional credential for signature validation.
config.toml:
Minimal Examples
Anthropic with Docker (typical dev setup)
Cloud Run Jobs runtime (environment file)
To run agents as Cloud Run Jobs instead of local Docker containers, add a[cloud] section to your environment file. The scheduler still runs wherever you host it; only agent execution is offloaded to GCP.