Node reference

Workflow

Add Node → Compose → Workflow

A Workflow is a node that contains a canvas. From the outside it looks and behaves like an ordinary media node: input rings on the left, an output ring for every way out on the right, and it shows whatever the graph inside produced. Open it, and you’re on a canvas of your own with the whole app available on it.

It’s the answer to a graph that has outgrown its screen. Once a chain of eight nodes has become “the bit that makes the product shot”, it stops being eight nodes you read and becomes one thing you use — so fold it away behind a single node, name it, and wire it up like any other.

There’s deliberately no Generate button here. A Workflow doesn’t run, it contains: you generate inside it, on the real generator nodes, and this node reflects whatever came out.

What’s on the node

Area What goes in it
Title Above the frame. Double-click to rename. An unnamed one reads a greyed “Workflow”, the way an unnamed Frame reads “Label”.
Open Workflow Appears as you approach the node. Double-clicking the frame does the same thing.
The frame One cell per output, in a grid that squares itself off as you add more. Each cell shows its own kind — a picture, a clip with its own player, the text of a prompt, a speaker for audio — with its number in the corner and a spinner while it’s working. Empty until you wire an Output up.
12 The inputs, numbered, each carrying the type of whatever you dropped on it.
+ Add Input. It has no type of its own — drop any wire on it and the slot is born typed to match.
123 The outputs, on the right, numbered top to bottom — one ring per Output node inside. Each takes the colour of what it carries, so one Workflow can hand out a picture, a clip and a prompt at the same time. Hover a ring for its name.

Outputs are typed one at a time, so a Workflow plugs into anything that accepts the flavour on that particular ring: the picture into an Upscale, the prompt into an Image node’s prompt input, the clip into whatever takes a video. They’re named, too — they read Output 1, Output 2 and so on until you rename them, and that name is what you see hovering the ring. There’s more on handles in How nodes connect.

Making one

Two ways, and the second is the one you’ll use.

From scratch — add it from Add Node → Compose → Workflow. You get an empty Workflow with a single Output waiting inside and no inputs at all: those turn up as you drop wires on the node’s + ring.

From what you’ve already built — select the nodes and choose Create Workflow: it’s on the toolbar that appears above a selection, and in the canvas right-click menu. The selection moves inside, its internal wiring untouched, and everything that crossed the boundary is rewired to the new node’s rings.

That last part is worth knowing, because it works in both directions. Every wire that crossed survives the fold: each one coming in becomes an input slot, and each distinct thing that was feeding the outside gets an Output node of its own, stacked down the right of the inside canvas in the order the rings will appear. Fold away a selection that three different nodes were reading from, and you get three outputs, already wired to the three of them.

If nothing was leaving the selection at all, you get a single output, wired to whatever sits furthest right among the nodes that weren’t feeding anything else inside — on the reasoning that it’s the one you were finishing on.

Inside

Opening a Workflow replaces the canvas with the level inside it, framed to fit, with a breadcrumb at the top to get back out. It’s a full canvas: add any node, generate, wire things up, even open another Workflow nested in this one.

Two kinds of node mark the boundary:

  • Input — one locked node per slot, standing in for whatever is plugged into that ring from outside. Wire it into your graph as if it were the media itself.
  • Output — a way out. Whatever you wire into one is what that ring carries on the outside, and the node previews it right there, so you can see what’s leaving without going up a level.

The two grow from opposite sides, which is the thing to hold on to. Inputs grow from the outside: drop a wire on the node’s + ring and the slot appears, typed by whatever you dropped, with its locked Input node seated inside. Unplug the wire and both go away again.

Outputs grow from the inside. Output is the one boundary node you add yourself — Add Node → Compose → Output, which only turns up in the menu while you’re inside a Workflow. Wire anything into it and the Workflow node grows a ring to match, typed and coloured by what you gave it. Name it by typing over the greyed Output 2 on the node, and that’s the name you’ll find hovering the ring outside.

Outputs you no longer need can be deleted like any other node. A Workflow always keeps at least one, so if you delete the lot, an empty one comes back.

A generation started inside keeps running whether or not you’re looking at it. Close the Workflow, go back to the root canvas, do something else — the node outside shows the spinner, and the result lands when it lands.

Unfolding one

Right-click a Workflow and choose Decompose Workflow, and it unfolds back onto the canvas it was standing on: the contents keep their layout and their internal wiring, and only the boundary is rewritten. Whatever was feeding a slot from outside now feeds the inner nodes directly, and everything that was reading a ring now reads the node that actually produced what came off it.

Nothing is lost on the way out — every crossing becomes one wire. The graph arrives centred on the node it came out of, so grouping and then unfolding puts every node back where it was, and anything sitting in the way is nudged clear.

Workflow, Frame, or Group?

Three ways of putting nodes together, and they’re not interchangeable:

  • A Frame draws a labelled box behind a section of canvas. Purely visual — the nodes stay where they are and stay visible.
  • Group N nodes in the right-click menu merges several media nodes into one carousel.
  • A Workflow folds a whole graph away behind one node, boundary and all. Reach for it when you no longer want to look at the inside.
← Back to all articlesNeed help? Go to Support →