Workflows
A workflow is a YAML file that defines a sequence of steps for FlowR to execute.
Structure
Section titled “Structure”namespace: a3tname: my-workflowversion: "1.0.0"title: "Human-readable title"description: "What this workflow does"enabled: truetags: [tag1, tag2]
steps: - name: step-1 type: set config: key: value export.as: "."
- name: step-2 type: call:http resource: my-api config: method: GET endpoint: uri: https://example.com then: endStep fields
Section titled “Step fields”| Field | Required | Description |
|---|---|---|
name | Yes | Unique step identifier |
type | Yes | Task type (e.g. set, call:http, call:llm) |
config | Yes | Task-specific configuration |
resource | No | Resource reference (namespace/name) |
then | No | Next step name, or end to stop |
export.as | No | jq expression to merge output into context (. = merge all) |
input.from | No | jq expression to transform input before step runs |
output.as | No | jq expression to transform step output |
checkpoint | No | If true, saves state for resumption |
enabled | No | If false, step is skipped |
Execution model
Section titled “Execution model”Steps execute sequentially by default. Use then to jump to a named step or end to terminate.
If no then is specified, execution continues to the next step in the list.
Workflows are async — execute_flow returns an instance ID immediately. Poll get_execution_status for the result.