Designing Workflows
This guide walks through the workflow builder: creating a workflow, adding and connecting nodes, wiring data between them, and running it.
You need the project Editor role or higher to create or change workflows.
1. Create the workflow
- Go to Build → Workflows and click Create Workflow.
- Click Untitled Workflow at the top and type a name. Press Enter.
- Click the settings (gear) button next to the name to open the details panel. Add a Description and review the Workflow Attributes.
A new workflow starts with two attributes: UserInput (a Text Input labelled "Enter your request") and StartMission (a launch button labelled "Go"). Keep, change or remove them — see Workflow Attributes.
If your project has a workflow-building assistant, the Workflows page also offers to build a workflow from a description in chat. The workflow it builds appears in the builder as it is created.
2. Add nodes
The Nodes palette sits on the left of the canvas. Either drag a node onto the canvas or click it to drop it in.
Start with a Trigger node — every workflow needs exactly one. Then add the steps. For what each node does, see the Workflow Node Reference.
3. Connect nodes
Drag from a node's bottom handle to the top of the next node. The run follows these connections.
- Several connections out of one node run the next nodes in parallel.
- Several connections in to one node make it wait for all of them by default. Open the node and set Join Mode to change this.
- A Condition has one handle per branch. Connect each branch's handle to the step for that outcome.
- An Approval has Approved and Rejected handles. Connect the next step to Approved only.
- Connect Loop Start to the first step of the loop body, the last step of the body to Loop End, and Loop End to whatever runs after the loop. Connecting Loop Start directly to Loop End pairs them automatically.
To change a connection, drag its end to a different node. To delete one, select it and press Delete.
If a node can be reached from different branches of a Condition — for example a "Final report" that both the high-risk and low-risk paths lead to — set its Join Mode to ∨ Any parent (OR-join). With the default, it waits for every parent, and because only one branch runs it never fires.
4. Configure each node
Click a node to open its editor. Pick the agent, team, function or workflow, write the Input Message Template, set any options, and click Save Changes. Saving a node saves the whole workflow.
In message and argument fields, type $ to insert a variable — an attribute value or an earlier node's output. For example:
Research the following topic in depth: ${attribute.UserInput}
and in the next node:
Write a clear, structured report from this research:
${node_2_result}
See Passing Data Between Steps for everything you can reference.
5. Save and validate
The toolbar at the top right of the canvas has:
| Button | What it does |
|---|---|
| Validate Workflow | Checks the structure and lists any problems. Shows "Workflow is valid ✓" when there are none. |
| Auto Layout | Arranges the nodes top to bottom. |
| Duplicate Selected (Ctrl+D) | Copies the selected nodes, with new IDs. |
| Delete Selected | Removes the selected nodes and connections (the Delete key does the same). |
| Save Workflow | Saves. A dot on the button means there are unsaved changes. |
| Run Workflow | Starts a run and opens it on the mission canvas. |
| Run All Tests | Shown only when the canvas has a Test Case node. See Testing Workflows. |
Moving, connecting and deleting nodes are not saved until you click Save Workflow. The browser warns you if you try to leave with unsaved changes. Saving runs the same checks as Validate Workflow and won't save a workflow that fails them. The checks are listed in the node reference.
To select several nodes, drag a box around them or Shift-click. The canvas also has zoom controls and a minimap.
6. Run it
- Run Workflow in the builder starts a run immediately with no attribute values. Use it for workflows that don't need inputs.
- To supply inputs, use Run on the workflow list (or go to Build → Missions), fill in the attributes and launch.
Either way the run opens on the mission canvas, where you can watch each node. See Missions.
Every node also has a ▶ button. See Testing Workflows for what it does.
Reviewing past runs
Click the history (clock) button next to the workflow name to open Executions — every run of this workflow with when it Started, its Status, Trigger, Stage, Progress and Duration. Filter by All statuses, Running, Waiting on you or Stopped, and click a run to open it.
When someone else edits the workflow
If an agent or another person changes the workflow while you have it open, the builder tells you. With no unsaved changes of your own, it reloads automatically. If you have unsaved changes, nothing is replaced: choose Discard mine and reload or Keep mine.
Tips
- Get a two-node version working first, then add branches and loops.
- Name nodes after what they do. Double-click a node's name on the canvas to rename it. References keep working because they use the node's ID.
- Break big processes into sub-workflows with the Mission node.
- Add an Approval node before any step that sends, publishes or changes something you'd want to check first.
- Put a Kill Switch straight after the Trigger of anything that runs on a schedule, so you can stop it without editing the workflow.