Agent Entry
Each agent is defined as an [[agents]] entry in runtime.toml. This page
documents every field in the agent entry schema.
Example
[[agents]]
name = "log-monitor"
wasm = "./agents/log_monitor.wasm"
enabled = true
tick_interval_ms = 5000
fuel_limit = 500_000
capabilities = ["database.read", "database.write", "http.request", "inference.prompt"]
[[agents.endpoints]]
name = "check-logs"
transport = "http"
url = "https://logs.example.com/api/query"
[agents.spend_policy]
max_daily_usd = 1.00
alert_threshold_pct = 80
[agents.sync.journal]
enabled = true
topic = "log-monitor"
[agents.intent_policy]
mutation_allowed = false
require_approval = ["http.request"]
Top-level fields
| Field | Type | Default | Description |
|---|---|---|---|
name | string | required | Unique agent name (used in logs, A2A, dashboard) |
wasm | string | required | Path to the compiled .wasm module |
enabled | bool | true | Whether the agent starts with the runtime |
tick_interval_ms | u64 | inherits runtime.tick_interval_ms | Per-agent tick override |
fuel_limit | u64 | inherits runtime.fuel_limit | Per-agent fuel budget override |
memory_limit_mb | u32 | inherits runtime.memory_limit_mb | Per-agent memory limit override |
capabilities | string[] | [] | Host capabilities granted to this agent |
env | table | {} | Environment variables injected into the agent |
description | string | "" | Human-readable description shown in dashboard |
tags | string[] | [] | Metadata tags for filtering and grouping |
[[agents.endpoints]]
Defines external service endpoints the agent may call.
| Field | Type | Default | Description |
|---|---|---|---|
name | string | required | Endpoint identifier used in SDK calls |
transport | string | "http" | Transport type: http, grpc, ws |
url | string | required | Endpoint URL |
headers | table | {} | Static headers added to every request |
timeout_secs | u64 | 30 | Per-request timeout |
[agents.spend_policy]
Controls inference spend limits for the agent.
| Field | Type | Default | Description |
|---|---|---|---|
max_daily_usd | f64 | 0.0 (unlimited) | Maximum daily spend in USD |
max_monthly_usd | f64 | 0.0 (unlimited) | Maximum monthly spend in USD |
alert_threshold_pct | u32 | 80 | Percentage of budget that triggers an alert |
[agents.sync.journal]
Controls journal synchronization for this agent.
| Field | Type | Default | Description |
|---|---|---|---|
enabled | bool | false | Enable journal sync for this agent |
topic | string | agent name | Sync topic; agents sharing a topic share journal state |
[agents.intent_policy]
Per-agent governance rules.
| Field | Type | Default | Description |
|---|---|---|---|
mutation_allowed | bool | true | Whether the agent can perform mutating operations |
require_approval | string[] | [] | Capabilities that require human approval before execution |
max_actions_per_tick | u32 | 0 (unlimited) | Rate-limit actions per tick |