Nodes/ComfyUI-RyuuNoodles/Passthrough 🐲
ComfyUI Node

Passthrough 🐲

The fallback switch, minus the switch

By DraconicDragon·Created about a year ago·Updated 2 months ago· 12
Passthrough 🐲
  • input_1
  • input_2_opt
  • *

You've got an optional branch in a workflow - a refiner, a second pass, an alternative image - that's sometimes bypassed and sometimes not. When it's live you want its output; when it's dead you want the original. That's Passthrough in one sentence: give it two inputs, and it picks the second if it exists, otherwise it hands back the first. No boolean to flip, no decision to make, no error when a branch disappears.

How it works

Two inputs, both typed * (any type - models, latents, images, conditioning, strings, all fair game):

  • input_1 - required. The safe, always-connected path.
  • input_2_opt - optional. Used if provided.

The logic is brutally simple: if input_2_opt is not None, output it; otherwise output input_1 and print a message to the console. The "provided" check is what makes it resilient - when the node feeding input_2_opt is muted or bypassed, ComfyUI hands the socket a None, and this node treats that as the normal state rather than crashing. Most other switch nodes don't bother.

It's the same mechanism as the Switch Any Fallback node, with the boolean input stripped out. The author's own description of the family nails it: the switches let you choose a preference; the passthrough just survives.

When you'd reach for it

  • Optional refinement branches - a refiner or detail pass that's sometimes bypassed; wire the raw output into input_1 and the refined version into input_2_opt.
  • Guarded connections - you want a value only when it exists, and the original when it doesn't.
  • Workflow hardening - if you're sharing a graph, this keeps it running even when someone mutes a whole branch on you.

The console message on fallback is informational, not an error. If your log is full of these, the RyuuNoodles settings page has a log-level control.

The one input that matters

You'll mostly just wire input_1 and input_2_opt and forget it. The output is a single * socket carrying whichever input won. There's no type checking and no mode switch, which is both the simplicity and the limit - if you want to choose between paths with a toggle, that's the Switch Any Fallback node's job instead.

Installing it

Same pack as everything else here:

cd ComfyUI/custom_nodes
git clone https://github.com/DraconicDragon/ComfyUI-RyuuNoodles

Restart ComfyUI, or install via ComfyUI Manager (search "RyuuNoodles"). No models, no extra dependencies.

Gotchas

Since both sockets accept anything, it's easy to wire the wrong thing through and only notice downstream. That's the any-type tradeoff - debug-friendly it is not, and the community's general distaste for anything-anywhere routing applies. Also keep in mind it's an output-node-flagged node, so ComfyUI may treat it as an endpoint in places; it still wires onward fine. For the one job it does - "give me the optional thing, or the fallback" - there's not much to trip over.

CategoryRyuuNoodles 🐲/Switches

Inputs (2)

NameTypeDefaultDescription
input_1*Will be used as fallback if input_2_opt is not provided.
input_2_optopt*Will be used if provided, otherwise input_1 will be used as fallback

Outputs (1)

NameTypeDescription
**