Skip to content

Simple Sequential Flow

Build your first flow with a linear sequence of steps.

Difficulty: Beginner Time: 10 minutes

What You'll Build

A basic flow that:

  • Triggers manually
  • Runs an agent
  • Outputs the result

Simple FlowTBD: Replace with screenshot of simple flow in editor

Prerequisites

Step 1: Create a New Flow

  1. Go to Flows in the sidebar
  2. Click + New Flow
  3. Name it "My First Flow"
  4. Click Create

Step 2: Add a Trigger Node

Every flow starts with a trigger.

  1. From the node palette, drag Trigger onto the canvas
  2. Click the node to configure:
yaml
triggerType: manual
inputSchema:
  type: object
  properties:
    topic:
      type: string
      description: Topic to research
  required:
    - topic

The trigger defines:

  • When the flow runs (manual = you click Run)
  • What input it accepts (a topic string)

Step 3: Add an Agent Node

  1. Drag Agent node onto the canvas
  2. Connect the Trigger to the Agent (drag from output to input)
  3. Configure the agent node:
yaml
agent: research-assistant  # Your agent ID
input: "{{trigger.input.topic}}"

Step 4: Add an Output Node

  1. Drag Output node onto the canvas
  2. Connect Agent → Output
  3. Configure:
yaml
output: "{{nodes.agent.output}}"

Step 5: Save and Run

  1. Click Save in the toolbar
  2. Click Run
  3. Enter input when prompted:
json
{
  "topic": "Latest developments in quantum computing"
}
  1. Watch the flow execute!

Understanding the Flow

Your flow looks like this:

┌──────────┐    ┌───────────┐    ┌──────────┐
│  Manual  │───▶│  Research │───▶│  Output  │
│ Trigger  │    │   Agent   │    │          │
└──────────┘    └───────────┘    └──────────┘

Data flow:

  1. Trigger provides {topic: "..."}
  2. Agent receives topic via {{trigger.input.topic}}
  3. Agent runs and produces output
  4. Output node captures the result

Template Syntax

Access data from other nodes using double curly braces:

ExpressionMeaning
{{trigger.input}}All trigger input
{{trigger.input.topic}}Specific field
{{nodes.agent.output}}Agent's full output
{{nodes.myNode.output.field}}Specific output field

Common Patterns

Add a Second Agent

Trigger → Agent 1 → Agent 2 → Output

Agent 2 input:

yaml
input: |
  Based on this research:
  {{nodes.agent1.output}}

  Provide a summary.

Add Logging

Insert a Transform node to log intermediate data:

Trigger → Agent → Transform (log) → Output

Transform configuration:

javascript
console.log("Agent output:", input);
return input; // Pass through unchanged

Add Error Handling

Wrap with a condition:

Agent → Condition → [Success] → Output
              └───→ [Error] → Error Handler

Flow Settings

Configure in the flow settings panel:

SettingDescription
NameFlow identifier
DescriptionWhat the flow does
TimeoutMax execution time
On ErrorStop, continue, or retry

Debugging

View Execution

Click Runs to see execution history:

  • Input received
  • Each node's output
  • Timing information
  • Any errors

Test Incrementally

  1. Run with just the trigger
  2. Add one node, run again
  3. Verify output at each step

Example: Daily Report Flow

yaml
name: Daily Report
description: Generates a daily summary

trigger:
  type: schedule
  cron: "0 9 * * *"  # 9 AM daily

nodes:
  - id: gather
    type: agent
    agent: data-gatherer
    input: "Gather metrics for {{today}}"

  - id: summarize
    type: agent
    agent: summarizer
    input: "{{nodes.gather.output}}"

  - id: output
    type: output
    value: "{{nodes.summarize.output}}"

Tips

  • Start simple: Get a basic flow working before adding complexity
  • Name nodes clearly: "Research Agent" not "Agent 1"
  • Test with sample data: Use realistic inputs
  • Check the runs tab: See exactly what happened

Next Steps

Released under the MIT License.