ComfyUI Node

Pipe In [LP]

Bundle a dozen wires into one before they turn your graph to spaghetti

By LevelPixel·Created 2 years ago·Updated 6 months ago· 31
Pipe In [LP]
  • pipe
  • model
  • pos
  • neg
  • latent
  • vae
  • clip
  • controlnet
  • image
  • any1
  • any2
  • any3
  • any4
  • any5
  • pipe
seed0

Anyone who's built a workflow past a certain size knows the problem this solves before you even explain it: you've got a model, positive and negative conditioning, a latent, a VAE, a CLIP, maybe a ControlNet, all needing to travel together from one group of nodes to another across a busy canvas, and routing each one as its own wire turns the graph into a plate of noodles. Pipe In collapses all of that into a single wire.

What it does

Pipe In takes any subset of the common pipeline types - model, conditioning, latent, VAE, CLIP, ControlNet, image, seed, plus five open "any" slots for whatever doesn't fit the named list - and bundles whatever you connect into one PIPE_LINE output. You don't have to fill every slot; wire in just the model and the latent if that's all you need moving together, and leave the rest empty. There's also an optional pipe input on the node itself, so you can feed an existing pipe in and add more to it rather than starting over.

This is the same problem rgthree-comfy's Context node solves - carrying a bundle of connections down one wire so a graph stays workable instead of becoming unreadable - just built for a narrower, SD-pipeline-specific case rather than Context's fully generic bundling. If you already lean on Context for this, you don't strictly need Pipe In. What LP's version buys you is fixed, labeled slots for the classic pipeline components (model, pos, neg, latent, vae, clip, controlnet, image, seed) rather than Context's anything-goes structure - less flexible, but you can't accidentally wire the wrong thing into a slot that's already named for you.

Inputs and outputs that matter

Everything on this node is optional - there's nothing required to fill in:

  • pipe - an existing pipe to build on, if you're merging into one already in progress.
  • model, pos, neg, latent, vae, clip, controlnet, image, seed - the standard SD pipeline types, each its own slot.
  • any1 through any5 - five wildcard slots for anything that doesn't fit the named list.

The single output is pipe (PIPE_LINE type) - wire it across your workflow to a Pipe Out node (or a Pipe node) to unbundle everything back into individual wires on the other side.

Installing it

Through ComfyUI Manager, search "ComfyUI Level Pixel" or "ComfyUI-LevelPixel." Or:

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

Restart ComfyUI. No models to download, no heavy dependencies - this is pure graph plumbing.

Where people get burned

PIPE_LINE is this pack's own custom type, the same way rgthree's Context has its own type. That means a pipe wire from Pipe In only connects to nodes from this same pack that declare a PIPE_LINE input - you can't drop it into a Context-consuming node from another pack, or vice versa. If a socket refuses to connect and you're sure the underlying data types line up, that's almost certainly why: check that both ends are LP nodes.

This is a genuinely low-visibility corner of the pack - it barely comes up in community discussion at all, which tracks with what it is: invisible plumbing that only ever shows up as one dependency among many in someone else's node list, never something people write a post about. That's not a knock on it; it's just not the kind of node anyone screenshots.

CategoryLevelPixel/Utils

Inputs (15)

NameTypeDefaultDescription
pipeoptPIPE_LINE
modeloptMODEL
posoptCONDITIONING
negoptCONDITIONING
latentoptLATENT
vaeoptVAE
clipoptCLIP
controlnetoptCONTROL_NET
imageoptIMAGE
seedoptINT00–18446744073709550000
any1opt*
any2opt*
any3opt*
any4opt*
any5opt*

Outputs (1)

NameTypeDescription
pipePIPE_LINE