ComfyUI Node

Flow Nodes

A stop light for your ComfyUI graph

By VertexStudio·Created 2 years ago·Updated 2 years ago· 0
Flow Nodes
  • value
  • value
mode1
behaviorStop

FlowNodes is the one genuinely interesting node in the otherwise small roblox-comfyui-nodes pack, and it has nothing to do with Roblox. Drop it in the middle of a graph and it works like a stop light: it can let a value pass through untouched, kill all downstream execution, or reach into your workflow and mute or bypass whatever nodes are sitting after it. If you've used rgthree's Fast Groups Muter and Bypasser, you already know the end goal - this is that idea packed into a single inline node instead of a dashboard.

The author's own description is the cleanest way to get the model in your head:

When behavior is 'Stop' and mode is active (1), the input value is passed to the output. When behavior is 'Mute' or 'Bypass' and mode is active (1), connected nodes are altered accordingly. When mode is inactive (0), the execution is halted.

How it works

Three inputs, one output - but they're doing a lot under the hood.

  • value (* any type) - just gets handed through. It's the carrier, not the point.
  • mode (INT, 0 or 1) - the kill switch. At 0, execute returns an ExecutionBlocker, which is ComfyUI's built-in way to halt everything downstream of this node for that run. That's a real stop, not a muted value.
  • behavior (Stop / Mute / Bypass) - what happens when mode is active. Stop is a plain pass-through. Mute and Bypass are where it gets clever: the node reads your workflow JSON from the prompt metadata, walks the output links to find the nodes connected after it (skipping Reroute nodes), checks each one's mode in the graph editor, then sends a flow-control-continue message to the ComfyUI frontend telling it which nodes to mute or bypass - and interrupts processing so the graph re-executes with those nodes switched off.

The output is just value (any type), and the node is marked as an output node, so it also acts as an execution anchor if you need one.

Why you'd actually use it

Mostly, one knob you want: a single toggle that can surgically disable a branch. Mute a whole refinement chain, bypass a face-detail pass, stop the graph cold when some upstream condition fails - without deleting nodes or digging through a group dashboard. It's the kind of control that pays for itself once a workflow gets big enough that "just delete the nodes" stops being a real option.

Two honest caveats. First, Mute/Bypass need the workflow metadata - that means it works when you run from the ComfyUI GUI, and it's flaky if you're driving the API directly. Second, the non-Stop behaviors need a modern ComfyUI with the execution model (comfy_execution) present; on an older build the code just prints [FlowNodes] ComfyUI version is outdated. 'Stop' behavior may not work correctly. and carries on.

Installing it

The pack installs like any other custom node, and there's nothing heavy to worry about: no requirements.txt, no model downloads, just torch/PIL/numpy stuff ComfyUI already ships.

cd ComfyUI/custom_nodes
git clone https://github.com/VertexStudio/roblox-comfyui-nodes

Restart ComfyUI and it shows up under FlowControl/Logic. Or, if you run ComfyUI Manager, search for roblox-comfyui-nodes (the pack title) and install from there.

Common issues

  • "Nothing happened." This node doesn't generate anything - if you wired it expecting to see an image change, check that you're reading its value output into the next real node. Its whole job is graph state.
  • Mute/Bypass doesn't do anything. You're almost certainly on an older ComfyUI, or running via API where the workflow JSON isn't available. The code prints [FlowNodes] Error: Missing workflow data. when it can't find it - watch your console.
  • Graph stopped dead. mode is at 0. That's the intended behavior, but it's easy to forget you left it flipped off and spend ten minutes convinced something's broken.

One small heads-up: the repo's README is empty and the code comments are in Spanish. It's a personal toolkit that got published, which means you're trusting a solo author's code. That's fine - but it's the exact situation where the "read the repo before you install" rule from the ComfyUI ecosystem applies. The logic here is short and readable, so give it a skim.

CategoryFlowControl/Logic

Inputs (3)

NameTypeDefaultDescription
value*
modeINT10–1
behaviorSTRINGStop

Outputs (1)

NameTypeDescription
value*