π CR 8 Channel In
Bundle up to eight wires into one bus line
- pipe
- ch1
- ch2
- ch3
- ch4
- ch5
- ch6
- ch7
- ch8
- pipe
- show_help
Big ComfyUI graphs turn into spaghetti fast - model, CLIP, VAE, conditioning, latent all trailing wires across the whole canvas to wherever they're needed. A bus fixes that. This node packs up to eight arbitrary connections into a single PIPE_LINE, so instead of eight wires crossing your graph you route one, then unpack it later with CR 8 Channel Out.
It's Comfyroll Studio's take on the bus/context pattern (Suzie1 / RockOfFire) - the exact same idea as rgthree's Context nodes: carry a bundle of connections down one wire so the graph stays readable. It adds no generation capability; it's pure organization.
How it works
Each channel is typed *, meaning it accepts anything - a model, a latent, an image, a string, whatever. You plug your wires into ch1 through ch8, and the node emits a single PIPE_LINE that carries all of them together. The channel number is the contract: whatever you put in ch3 here comes out of ch3 at the other end. There's no naming, just position, so pick a convention and stick to it.
The optional pipe input is what makes this composable. Feed an existing bus in, and this node merges your new channels onto it - so you can build a bus up in stages across the graph, or top up a bus that came from an upstream module, rather than always starting from eight empty slots.
The inputs that matter
ch1βch8- the (optional) connections to bundle. Any type. Empty slots are fine; you don't have to fill all eight.pipe(optional) - an incomingPIPE_LINEto extend. Leave it unconnected to start a fresh bus.
Output is the single pipe (PIPE_LINE) plus the show_help link. Route that pipe wherever the bundle needs to go, then unpack with CR 8 Channel Out.
How to install it
- ComfyUI Manager: search
Comfyroll Studio, install, restart. - Manual:
cd ComfyUI/custom_nodes && git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git, then restart.
No models - it's pure plumbing.
Common issues
The one rule that saves you grief: channels are positional, and the In and Out nodes have to agree. If you unpack ch5 expecting a VAE but you loaded the VAE into ch4 back here, you'll wire garbage into the wrong socket and get a confusing type error downstream. Keep a consistent channel map for your whole graph.
Second thing - a bus doesn't unload anything. Bundling a model into a channel doesn't save memory; it's a routing convenience, not a performance trick. And because the channels are untyped *, ComfyUI can't warn you at connect time if you cross wires; the mismatch only surfaces where the value is finally used. If the node's missing from your menu entirely, that's the Comfyroll pack failing to load, which is a pack-level issue rather than this node.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| pipeopt | * | β | |
| ch1opt | * | β | |
| ch2opt | * | β | |
| ch3opt | * | β | |
| ch4opt | * | β | |
| ch5opt | * | β | |
| ch6opt | * | β | |
| ch7opt | * | β | |
| ch8opt | * | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| pipe | PIPE_LINE | β |
| show_help | STRING | β |