Your First Flow
This tutorial creates a deterministic two-block Flow. It uses inline data and a Row Filter, so it does not need a model, external file, network service, Script, or Memory write.
Build the draft
- Open Canvas and choose New if the current tab contains work you do not need. Pioneer warns before discarding unsaved work.
- In Design mode, add Data Source from the Source section.
-
Select the block, open its configuration, keep Inline JSON, and use:
[ {"name": "Ada", "score": 92}, {"name": "Grace", "score": 74}, {"name": "Linus", "score": 88} ] -
Add Row Filter and set Expression to
score >= 80. - Connect the Data Source output to the Row Filter input.
- Give the Canvas a title such as
First Filtered Scores.
Connections determine executable dependency order. Their visual placement does not create a separate data channel: current block dependencies use the Flow's logical rows stream.
Validate what you built
Canvas continuously derives validation for the current draft and exposes findings in the inspector. Resolve missing required configuration, unknown connections, duplicate block IDs, cycles, or unbalanced control markers before running.
At this point the blocks are CONFIGURED. Nothing has executed.
Save the Flow
Choose Save. The current UI calls the durable library item a saved “template”; this manual calls it a Saved Flow. A first save creates a durable identity. Later Update operations advance its saved revision. Save as creates another durable identity.
Confirm the status changes to Saved, then open Library → Templates and confirm the title appears.
Save is not run
The Saved Flow now exists, but there is still no execution evidence.
Run and inspect
Choose Run to execute the current Canvas build. When it completes, expect two terminal rows: Ada and Linus. The status area shows the run ID, duration, block progress, row count, and a bounded terminal preview.
Open Executions, select the run, and inspect its outcome, stage timeline, row transitions, and retained evidence. A completed run proves that the engine reported completion for that snapshot; review the output before deciding it is correct.
For the stricter saved-Flow path, ask Chat to run the named Saved Flow. Chat inspects the current saved revision and fingerprint, then requests separate human approval before submission. See Running Saved Flows.