> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agno.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Design step-based workflows visually in AgentOS Studio.

Studio provides a **drag-and-drop Workflow Builder** for designing multi-step workflows visually. Create complex automation pipelines without writing code by dragging components onto the canvas and connecting them together.

## Creating Steps

Drag a step onto the canvas and configure its executor type in the properties panel. Each step can use one of the following executors:

| Executor Type       | Description                                                         |
| ------------------- | ------------------------------------------------------------------- |
| **Agent**           | Execute the step using a registered agent from your OS              |
| **Team**            | Delegate the step to a multi-agent team for collaborative execution |
| **Custom Executor** | Use a custom function or script for specialized logic               |

## Step Types

Beyond basic steps, you can build complex workflows using these step types:

| Step Type   | Description                                                  |
| ----------- | ------------------------------------------------------------ |
| `Step`      | Single agent, team, or custom executor execution             |
| `Steps`     | Group of steps executed sequentially                         |
| `Condition` | Branch based on an evaluator function or CEL expression      |
| `Loop`      | Repeat steps until an end condition is met                   |
| `Router`    | Select a step based on a selector function or CEL expression |
| `Parallel`  | Execute multiple steps concurrently                          |

These step types can be nested and composed together to build sophisticated automation pipelines while maintaining visual clarity.

### Configuring Complex Steps

Step types like `Condition`, `Router`, and `Loop` require logic to control their behavior—either a Python function or a CEL expression. For example, you can use a CEL expression to evaluate if the input contains the word "apple":

```python theme={null}
from agno.workflow import Condition, Step, Workflow

condition = Condition(
    name="apple_condition",
    evaluator="input.contains('apple')",
)
```

Alternatively, you can use a function to evaluate the condition.

```python theme={null}
from agno.workflow import Condition, Step, Workflow

def is_apple(step_input) -> bool:
    return "apple" in step_input.input

condition = Condition(
    name="apple_condition",
    evaluator=is_apple,
)
```

## CEL Expressions

Workflow steps support [CEL (Common Expression Language)](https://github.com/google/cel-spec) as an alternative to Python functions for evaluators, end conditions, and selectors. CEL expressions are strings that can be serialized and edited directly in Studio without code.

See [CEL Expressions](/agent-os/studio/cel-expressions) for full usage, context variables, and examples.

## Save and Run

Once your workflow is designed:

1. **Save** your workflow to persist it to the registry
2. Navigate to the **Chat page** to run your workflow interactively
3. Provide input and watch the workflow execute step-by-step
4. View results and logs for each step in real-time

## Developer Resources

* [Workflow reference](/reference/workflows/workflow)
* [Building workflows](/workflows/building-workflows)
* [Workflow patterns](/workflows/workflow-patterns/overview)
* [Studio Registry](/agent-os/studio/registry)
