Quick Start
How It Works
| Phase | What happens |
|---|---|
| 1. Validate | Agent checks required capabilities against available runtimes |
| 2. Select | Preferred runtime is used if available |
| 3. Fallback | Alternative runtime used if preferred is unavailable and fallback_allowed=True |
| 4. Execute | Agent runs on selected runtime |
Configuration Options
Full list of options, types, and defaults —
RuntimeConfig| Option | Type | Default | Description |
|---|---|---|---|
required_capabilities | list[str] | None | None | Capabilities the agent requires |
preferred_runtime | str | None | None | Preferred runtime implementation name |
fallback_allowed | bool | True | Allow fallback if preferred runtime is unavailable |
validate_on_creation | bool | True | Validate at agent creation (vs first execution) |
metadata | dict | None | {} | Additional runtime hints |
Common Patterns
Pattern 1 — Streaming-capable agent
Pattern 2 — MCP-tools agent with strict requirements
Best Practices
Use validate_on_creation=True
Use validate_on_creation=True
Keeping
validate_on_creation=True (the default) surfaces capability mismatches immediately when the agent is created, not halfway through a task. This prevents silent degradation.Allow fallback for resilience
Allow fallback for resilience
Set
fallback_allowed=True unless your agent strictly requires a specific runtime. Fallback lets the agent work even in environments where the preferred runtime isn’t installed.Check available capabilities
Check available capabilities
Capability names include
streaming_deltas, tool_loop, mcp_tools, native_hooks. Use only documented capability names to ensure forward compatibility.Related
Runtime Capabilities — full capabilities reference
Execution — control iteration limits and budget

