Skip to content

workflow.yaml Reference

Optional DAG of agent steps. Each step calls an agent via A2A. Supports template interpolation for inputs and output.

Top-Level Fields

Field Type Default Description
name string Workflow name
version string Workflow version
description string "" Optional description
timeout_ms number 120000 Overall workflow timeout
steps array Step definitions (required)
output_step string null Template for final output

Step Fields

Field Type Default Description
id string Unique step ID (required)
agent_ref string A2A endpoint: local://name or URL
input_template string "{{ input }}" Template with {{ input }}, {{ steps.<id>.output }}
depends_on string[] [] Step IDs that must complete first
condition string null Skip if false (e.g. {{ steps.router.output }} == "technical")
timeout_ms number null Per-step timeout override

Validation

  • At least one step required
  • Step IDs must be non-empty and unique
  • depends_on must reference existing steps; no self or cycles
  • DAG must be acyclic (topological sort)

Example

name: pipeline
version: 0.1.0
timeout_ms: 120000
steps:
  - id: router
    agent_ref: local://router
    input_template: "{{ input }}"
    depends_on: []
  - id: worker
    agent_ref: local://worker
    input_template: "{{ steps.router.output }}"
    depends_on: [router]
output_step: "{{ steps.worker.output }}"