Control flow: conditions, loops, gates
The four connection flow types (Always, Conditional, Approval Gate, Loop) and when to use which.
Every connection has a flow type that controls when it fires. Four types are supported. Open the Connection Config popup (double-click a connection) and pick from the Flow type dropdown, or use the right-click → Flow Type submenu for a quick switch. Always (default) The downstream agent runs as soon as the upstream finishes. No conditions, no gates. This is what you want 95% of the time. Edge appearance: solid line, role-accent gradient. Conditional The downstream runs only if a natural-language condition evaluates true on the upstream's output. Open Connection Config and fill in: Condition : natural-language. e.g. "the researcher's output mentions Horizon Europe funding." Condition label : short text shown on the edge (optional). Is else branch? : if true, the edge fires when the condition is false . Conditional edges are evaluated by an LLM-as-judge pass over the upstream output. The judge runs on the same provider as the upstream agent (cheap call, usually Haiku-class). When to use Routing: send "high confidence" results to a fast writer, "low confidence" to a senior reviewer. Branching: if a researcher finds no sources, send to an escalation agent instead of the writer. Veto: if a reviewer says "this is wrong", route back to the original author instead of proceeding. Patterns Two conditional edges from the same source: one for the true branch, one with Is else branch set, give you an if/else split. The orchestrator guarantees exactly one fires. Cumulative conditions across multiple edges (three different criteria, three different downstream agents) all fire independently. Approval Gate The workflow pauses. You see a modal showing the upstream's output and an approval prompt. You click Approve to continue or Reject to halt. Configure: Approval prompt : the text shown to you when the gate opens. E.g. "Is this research solid enough to publish?" When to use High-stakes decisions: before a content agent publishes, before a code agent deploys. Cost gates: before a long-running expensive agent kicks off. Quality gates: review the upstream output before letting the workflow continue. The agent on the upstream side of a gate completes normally; the gate sits between completion and downstream startup. Loop The source agent re-runs until an exit condition is met or maxIterations is reached. The "target" of a loop is effectively the same agent; it loops back on itself. Configure: Loop condition : natural-language exit criterion. E.g. "the draft is at least 600 words and includes all three required sections." Max iterations : default 3. Hard cap to prevent runaway. When to use Refine until done: draft → critique → revise until the critique passes. Iterative search: query → assess → refine query. Convergence: optimization passes that improve a metric. Each loop iteration runs the agent fresh with the previous iteration's output as additional context. The exit condition is checked against each iteration's output. If maxIterations is hit without the conditio