Flows

Flows chain multiple apps together.


Why flows?

Some tasks need multiple steps:

code
1Generate image  Upscale  Remove background  Resize

Instead of running each manually, create a flow that does all four.


How flows work

code
1Input  App A  App B  App C  Output

Each app's output becomes the next app's input. The runtime runs steps in order; when a step fails, the flow stops and the run is marked failed.


Flow runs and tasks

Every flow run creates a parent task that tracks the full execution — inputs, per-step progress, final output, and status.

TriggerWhat you see in Tasks
Run from the workspaceOne task for the flow; step status in the task detail view
Agent calls a flow as a toolOne task for that flow invocation
POST /run on a deployed flow appOne task; optional webhook fires when the parent task completes

Individual app steps execute inside the flow run. You do not manage each step as a separate top-level task from the API.

Tasks — status, cancellation, cost, and completion webhooks
Flows API — create, edit, duplicate, and deploy flow definitions
Flow Runs APIPOST /flowruns, list, cancel, and SSE streams


Creating flows

Use the visual editor:

  1. Drag apps onto the canvas
  2. Connect outputs to inputs
  3. Run the whole thing

Creating a Flow — editor walkthrough
Connecting Nodes — mapping data between steps


Flows as tools

Once created, a flow can be:

  • Run directly from the workspace
  • Added as an agent tool (the agent sees one tool; the runtime runs every step)
  • Deployed as a standalone app with its own POST /run endpoint

When an agent invokes a flow, the parent agent turn waits for the flow task to finish (same join behavior as app tools and sub-agents in a parallel turn).

Flows guide — agent tools, deploy-as-app, execution UI


Next

Agents
Tasks

we use cookies

we use cookies to ensure you get the best experience on our website. for more information on how we use cookies, please see our cookie policy.

by clicking "accept", you agree to our use of cookies.
learn more.