Skip to main content
Workflows orchestrate your agents and teams as a series of steps executed in a flow that you control.

Building Blocks

  1. The Workflow class is the top-level orchestrator that manages the entire execution process.
  2. Step is the fundamental unit of work in the workflow system. Each step encapsulates exactly one executor: an Agent, a Team, a custom Python function, or a nested Workflow. This design ensures clarity and maintainability while preserving the individual characteristics of each executor.
  3. Loop is a construct that allows you to execute one or more steps multiple times. This is useful when you need to repeat a set of steps until a certain condition is met.
  4. Parallel is a construct that allows you to execute one or more steps in parallel. This is useful when you need to execute a set of steps concurrently with the outputs joined together.
  5. Condition makes a step conditional based on criteria you specify.
  6. Router allows you to specify which step(s) to execute next, effectively creating branching logic in your workflow.
When using a custom Python function as an executor for a step, StepInput and StepOutput provides standardized interfaces for data flow between steps:
Workflows step IO flow diagram

How to make your first workflow?

There are different types of patterns you can use to build your workflows. For example you can combine agents, teams, and functions to build a workflow.