Quick Start
1
Simple Usage
Enable default capability validation with a single flag.
2
With Configuration
Declare exactly which capabilities your agent requires.
How It Works
The runtime= Parameter
Six forms are accepted, all normalised to RuntimeConfig internally.
Precedence ladder:
Instance > Config > Dict > List > String > Bool > Default
Configuration Options
RuntimeConfig
RuntimeCapability Enum
12 capabilities are available:
Built-in Capability Matrices
Runtime → Matrix Mapping
Common Patterns
Fail-fast on missing hooks
native_hooks, the agent raises CapabilityValidationError immediately.
Allow fallback when preferred runtime unavailable
Disable creation-time validation
Catch validation errors
Best Practices
Always declare what you need
Always declare what you need
Use
required_capabilities to document which features your agent depends on. This prevents silent feature degradation when switching runtimes — you’ll know immediately if the new runtime can’t support your agent.Keep validate_on_creation=True
Keep validate_on_creation=True
The default
validate_on_creation=True catches mismatches at boot time, not mid-conversation. A fast, visible error at startup is always better than a cryptic failure during user interaction.Use preferred_runtime='native' for full features
Use preferred_runtime='native' for full features
The native runtime supports all 12 capabilities. Only use
"claude-code" or "plugin-harness" when you accept the reduced capability set (tool_loop, basic_chat, simple_tools).For custom CLI backends, implement capabilities()
For custom CLI backends, implement capabilities()
CliBackendProtocol now requires a capabilities() -> RuntimeCapabilityMatrix method. Without it, the backend reports as reduced capability only. Third-party backends must add this method to participate in capability validation.Related
CLI Backend Protocol
CLI backend integration (now deprecated in favour of runtime=)
YAML Configuration Reference
YAML agent options including the new runtime field

