Salt AI Docs
Pipeline Builder

Edges

Connect nodes with color-coded edges and use handles to inspect data types at a glance.

Edges are the lines between nodes that define how data flows through your pipeline. Each edge connects an output handle on one node to an input handle on another, creating a pipeline where the result of one operation feeds into the next.

Creating edges

Start the edge

Hover over an output handle on the source node (right side). The handle highlights when it's ready to connect.

Draw the edge

Click and drag from the output handle toward the destination node. A line follows your cursor as you drag.

Complete the edge

Drop the line onto a compatible input handle on the destination node (left side). If the handles are compatible, the edge snaps into place. If they are not compatible, the edge is rejected.

You can also drag from an input handle backward to an output handle — the direction of the drag doesn't matter, only the handle types.

Color-coded data types

Every handle has a data type, and every edge is color-coded to match. You can tell what kind of data flows through an edge just by its color. Hover over any handle to see its data type in a tooltip.

Primitives

TypeDescription
STRINGPlain text data
INTInteger values
FLOATFloating-point numbers
BOOLEANTrue/false values
* (Wildcard)Accepts any data type — handles and edges render with a rainbow effect

Domain types

TypeDescription
PDBProtein structure files
FASTABiological sequence data
MSAMultiple sequence alignments
CIFCrystallographic information files
JSONStructured JSON data
CSVTabular data
LISTOrdered collections
AGENTAI agent references
DOCUMENTDocument data
AUDIOAudio data

Core types

TypeDescription
IMAGEImage data
MODELAI model references
LATENTLatent space representations
MASKImage masks
CONDITIONINGPrompt conditioning data
CLIPCLIP model references
VAEVAE model references
CONTROL_NETControlNet model references

You can only connect an output handle to an input handle that accepts the same type (or accepts Wildcard). The editor prevents incompatible edges, so you don't need to memorize the rules — just try connecting and the system guides you.

Click on any edge to open a quick navigation UI. From there you can jump directly to the source node or the destination node of that edge. This is especially useful in large pipelines where the connected nodes may be far apart on the canvas.

Managing edges

Removing an edge

Right-click on an edge to open a context menu with the option to delete it. You can also select an edge and press Delete or Backspace.

Replacing an edge

If you drag a new edge to an input handle that already has one, the new edge replaces the old one. Each input handle accepts only one incoming edge.

Multiple outputs

A single output handle can connect to multiple input handles on different nodes. This lets you fan out data to several downstream operations in parallel.

Data flow

When a pipeline runs, data flows along edges in dependency order:

  1. Nodes with no inputs (or only widget-configured inputs) run first.
  2. Once a node finishes, its output data is sent along all outgoing edges.
  3. A downstream node runs only after all of its connected inputs have received data.

Independent branches run concurrently — nodes wait only for the specific inputs they need.

Circular edges (where node A depends on node B which depends on node A) are not allowed. The editor prevents you from creating cycles.

On this page