Skip to content

A tour of the editor

The palette, the canvas, saving, and what the warnings mean.

The flow editor is a full-screen canvas with a palette down the left. You drag blocks out, snap them together, and save. On a phone the palette is a row of categories above the canvas instead (swipe it sideways to reach the rest), so the canvas keeps the full width.

The header carries everything about the flow itself: its name (click it to rename), its version and run health, the Enabled switch, and a ⋯ menu with Run now on clients, Choose clients, Webhook URL, Duplicate flow, Publish to the Flow library, Edit as JSON (View generated JSON on a read-only flow) and Delete flow. Under the header, Runs on lists the clients the flow is attached to.

The footer holds Try it, which runs a dry run of the canvas (on a wide screen in the browser), Run on server, which runs one trigger for real on a client, and the save buttons.

The palette

Blocks are grouped into nine categories, and each category has its own colour: a block always wears the colour of the category it came from, so a stack tells you what it is made of at a glance.

on join
chat anything I say
set variable name to value
go to nearest chest within 32 blocks
open container nearest x y z · radius 4
dig nearest wheat within 16 blocks, 1 time(s)
wait 2 seconds
repeat 4 times
test health below 8

Top to bottom: Triggers (green hats), Chat & commands (indigo), Variables (magenta), Movement (teal), Inventory (amber), World (orange), Timing & control (slate), Control (purple) and Conditions (the darker purple that plugs into control sockets).

Some flyouts have a label above a group of blocks. The Triggers category separates world events, text events, the manual trigger and routines that way.

On a free account the palette offers only the blocks a free client can run, with a link to the plans above it. A block from a 24/7 plan that is already in a flow is kept and marked, but it does not run on the free tier.

Building a stack

A trigger is a hat: it has no notch on top, so nothing can sit above it. Actions snap underneath, and under each other, and run top to bottom.

Control blocks are C-shaped. The blocks you drop inside them are the body of the loop or the branch:

repeat 3 times
dig nearest oak_log within 24 blocks, 1 time(s)
wait between 800 and 2000 ms

Conditions are a different shape. They do not stack. They plug into the socket on an if, a while or a wait until.

Fields

The white boxes on a block are its fields: type into them, or pick from a dropdown. Durations are a number plus a unit (seconds, minutes, hours), so you never type milliseconds.

To use a value saved on a client, or one set while the flow runs, drop a block from the Variables category into the field. See variables and secrets.

Saving

Save saves and keeps you in the editor; Save & close saves and goes back to your flows. Both sit in the footer. Two things happen when a flow is saved:

  • The flow is validated. A block with an impossible value is rejected and the editor says what is wrong.
  • Clients already running this flow reload it, and the toast says so.

Leaving with unsaved changes prompts first: This flow has changes that haven't been saved yet.

The warning that matters

3 blocks aren't connected to a trigger and won't be saved. Drag them under a trigger's "do".

Only stacks hanging from a hat are part of the flow. Anything else is dropped on save. This is the single most common reason actions seem to disappear or never run. See how flows work.

Disabling a block instead of deleting it

Right-click a block and choose Disable to keep it in the flow without running it. Useful for turning half a flow off while you test the other half. A disabled trigger stays in the document but is not installed on the client.

Right-clicking the canvas

The usual Blockly conveniences are there: undo, redo, clean up the blocks, collapse, delete. Zoom controls sit in the corner of the canvas.

Selecting several blocks

Shift-click a block to add it to a selection, shift-click it again to drop it. Selected blocks carry a dashed accent outline. Right-click with more than one selected and the menu gains Duplicate selected and Delete selected, which act on the whole set. Each duplicate lands slightly offset from its original so you can see it.

Clicking anywhere on empty canvas clears the selection. Duplicating a block duplicates whatever is attached beneath it, the same as Blockly's own duplicate.

On an installed flow, which is read-only, the delete entry is not offered.