ComfyUI Node

Bus Pipe

Bus Pipe

By antrobot1234·Created 3 years ago·Updated about a year ago· 28
Bus Pipe
  • pipe
  • model
  • clip
  • vae
  • positive
  • negative
  • pipe
  • model
  • clip
  • vae
  • positive
  • negative

BusPipe is a pass-through hub for a BASIC_PIPE. It takes a pipe in, lets you override any individual slot, and gives you back both the whole pipe and each component broken out - model, CLIP, VAE, positive, negative - on the same node. If you've used rgthree's Context node, you already know the pattern: it's a bus you tap into and splice, so a bundle of connections can run across your whole graph on one wire while you pick pieces off it wherever you need them.

Why you'd reach for it

A big workflow has the same model, VAE, and conditioning needed in a dozen places. Running five separate wires to each of those spots is how graphs become unreadable - the exact problem the whole "carry a bundle on one cable" idea exists to fix. BusPipe lets you run a single BASIC_PIPE along your workflow and, at each node that needs it, tap the specific outputs you want without unpacking and repacking.

The clever part is that input and output live on the same node. That means you can take a pipe, swap just its model (say, to insert a LoRA-loaded version for one section), and emit an updated pipe onward - while the untouched slots pass straight through. It's a reroute, a splitter, and an editor in one, which is why it earns a permanent spot in pipe-based builds.

How it works

Every input is optional. A connected pipe provides the baseline; any of the individual inputs you also connect override the matching slot in that pipe. The node then outputs the resulting pipe plus each component individually. Connect only the individual inputs (no pipe) and it acts as a constructor; connect only a pipe and it acts as a splitter; connect both and it's an editor.

The inputs and outputs

Inputs (all optional):

  • pipe - the incoming BASIC_PIPE to pass through.
  • model / clip / vae / positive / negative - override any of these; whatever you connect replaces that slot.

Outputs give you everything both ways:

  • pipe - the (possibly edited) BASIC_PIPE to continue the bus.
  • model / clip / vae / positive / negative - each component broken out for direct use.

Installing it

ComfyUI Manager → search antrobots ComfyUI Nodepack, install, restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/antrobot1234/antrobots-comfyUI-nodepack

No downloads. It emits and consumes the standard BASIC_PIPE, so it interoperates with Impact Pack's pipe nodes if you use them.

Common issues

The behavior that surprises people is the override. If you connect both a pipe and, say, a model, the loose model wins for that slot - that's intentional, it's how you splice. But if you didn't mean to override, an accidental connection there silently changes what flows downstream. If your pipe is carrying an unexpected model or conditioning, check whether an individual input on a BusPipe is quietly overriding it.

Second, empty slots pass through as empty. If nothing upstream ever set the VAE and you tap the vae output, you get nothing - trace back to where the pipe should have been populated (a checkpoint loader, or an Op. To Basic Pipe).

And as with any custom node that has a stack of typed widgets, if it renders strangely under ComfyUI's Nodes 2.0 frontend, try the legacy canvas - the Vue rewrite has been hard on this whole category of node.

Categoryantrobots-ComfyUI-nodepack/flow-control

Inputs (6)

NameTypeDefaultDescription
pipeoptBASIC_PIPE
modeloptMODEL
clipoptCLIP
vaeoptVAE
positiveoptCONDITIONING
negativeoptCONDITIONING

Outputs (6)

NameTypeDescription
pipeBASIC_PIPEedited pipe
modelMODELmodel
clipCLIPclip
vaeVAEvae
positiveCONDITIONINGpositive
negativeCONDITIONINGnegative