Documentation
View .mdOptimized for LLMs — paste directly into ChatGPT, Claude, or Cursor.
Defining agents
Agents are declared in YAML manifests. The file's id is the agent's identifier; kind selects one of six agent types. LLM, tool, sequential, and parallel manifests are portable across embedded and hosted runtimes. Transcription and image manifests run on hosted or self-hosted workers with a matching operation adapter.
Anatomy of a manifest
A manifest is just data — there's no code to maintain alongside it. The runner validates it on load, registers it with the runtime, and exposes it through the same client.agents.run API regardless of where it runs.
Read next
- The six agent kinds — model operations, deterministic tools, and composed pipelines.
- Common fields —
id,name,kind, and the fields every agent shares. - Input, state, and output — how data flows into and out of an agent.
- Templates and conditions — the
{{}}mini-language used in instructions, params, andwhen/until. - Provider replacement — use the hosted run API instead of a provider-specific SDK call.