Workflow Builder
How Dolphinflow workflows are built, saved, and executed.
Builder Surface
The workflow builder is a React Flow canvas. Users drag nodes into a graph, connect handles, edit node configuration in the right panel, then save or update the workflow.
The available blocks are:
- Trigger: event source for a workflow.
- Condition: filter branch with one or more conditions.
- Action: on-chain action or no-op placeholder.
- Notify: message delivery to one or more channels.
Workflow Metadata
Each workflow has:
name: required, up to 100 characters.description: optional, up to 500 characters.graph: nodes, edges, and viewport.metadata: version, limits, and creator/update source.enabled: whether triggers are active.
New workflows are created disabled. Users enable them from the workflows list, which also syncs cron jobs for scheduled triggers.
Node Handles
Trigger nodes expose:
output: continue after a trigger event.
Filter nodes expose:
if: conditions passed.else: conditions did not pass.error: filter evaluation errored.
Action nodes expose:
success: action succeeded.error: action failed.
Notify nodes expose:
sent: notification completed or was treated as non-fatal.error: notification failed.
Validation
The API validates graph structure and executable shape before create or update. It rejects graphs with missing trigger nodes, missing action/notify nodes, invalid edges, cycles back into triggers, invalid webhook trigger configuration, or invalid cron schedules.
Builder validation currently checks required trigger/action/notify fields before save. Agents should keep builder validation, API validation, and runtime behavior aligned when changing node types.
Current Caveat
The graph-level executable check allows notification-only workflows, but the builder validation currently requires at least one action node. If notification-only workflows should be supported in the UI, update builder validation to match the API behavior.