SP Any Pipe [10 Ports]
Bundle ten arbitrary wires into one
- cpipe_in
- any_1_in
- any_2_in
- any_3_in
- any_4_in
- any_5_in
- any_6_in
- any_7_in
- any_8_in
- any_9_in
- any_10_in
- cpipe_out
- any_1_out
- any_2_out
- any_3_out
- any_4_out
- any_5_out
- any_6_out
- any_7_out
- any_8_out
- any_9_out
- any_10_out
If you've used rgthree's Context node, you already understand this one: SP_AnyPipe10 takes a pile of separate connections and bundles them down one wire, so a big workflow doesn't turn into a rat's nest every time you need to carry the same ten things from one part of the graph to another. Ten typed "any" slots in, ten back out, plus a chainable pipe connector to link multiple pipe nodes together if ten isn't enough.
How it's built
Every port - any_1_in through any_10_in, and the matching any_1_out through any_10_out - is typed *, ComfyUI's wildcard type, so you can put a MODEL in slot 1, a CONDITIONING in slot 2, a plain STRING in slot 3, whatever you need. All ten input slots are optional, which means you don't have to fill every port to use the node - wire up the two or three things you actually need to bundle and leave the rest empty. On top of the ten any-slots there's cpipe_in and cpipe_out, typed sp_anypipe rather than * - a dedicated pipe-chain type that only connects to other SP Any Pipe nodes. That's the mechanism for going past ten: feed one pipe's cpipe_out into the next pipe's cpipe_in and you're chaining bundles together rather than being capped at whatever port count one node offers.
Since every slot is wildcard-typed, ComfyUI's usual type-checking won't catch a wiring mistake here the way it would with a typed MODEL or IMAGE port - plugging the wrong thing into any_3_in and expecting an IMAGE out the other side will connect just fine and only fail once something downstream tries to use it as the wrong type. Worth remembering before you build a big pipe bundle and wonder why a much later node is erroring.
The inputs and outputs
any_1_in–any_10_in- the things you're bundling, any type, all optional.cpipe_in- optional; wire in a previous pipe'scpipe_outto chain bundles.any_1_out–any_10_out- the same values, unbundled again on the other end, in the same port order they went in.cpipe_out- feeds the next pipe node'scpipe_inif you're chaining.
Installing SP-Nodes
Via ComfyUI Manager: search "SP-Nodes," install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/bananasss00/ComfyUI-SP-Nodes
Restart once cloned. No model download, no extra dependency - this is pure graph plumbing, nothing runs at inference time.
Where this bites
The wildcard-typing tradeoff above is the real gotcha: keep track of which slot carries what yourself, ideally by renaming the node's title or leaving a note in the graph, because ComfyUI's own type system won't do it for you here. If a downstream node throws an unexpected type error after passing through one of these pipes, check the pipe's wiring before assuming the downstream node is broken - it's very easy to shift what's plugged into slot 4 while editing a big graph and not notice the corresponding output moved with it.
If ten ports genuinely isn't enough and you don't want to chain two pipe nodes together, SP-Nodes also ships a 15-port version of this same node - reach for that instead of daisy-chaining two 10-port pipes if you know up front you need more than ten things bundled.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| cpipe_inopt | sp_anypipe | — | |
| any_1_inopt | * | — | |
| any_2_inopt | * | — | |
| any_3_inopt | * | — | |
| any_4_inopt | * | — | |
| any_5_inopt | * | — | |
| any_6_inopt | * | — | |
| any_7_inopt | * | — | |
| any_8_inopt | * | — | |
| any_9_inopt | * | — | |
| any_10_inopt | * | — |
Outputs (11)
| Name | Type | Description |
|---|---|---|
| cpipe_out | sp_anypipe | — |
| any_1_out | * | — |
| any_2_out | * | — |
| any_3_out | * | — |
| any_4_out | * | — |
| any_5_out | * | — |
| any_6_out | * | — |
| any_7_out | * | — |
| any_8_out | * | — |
| any_9_out | * | — |
| any_10_out | * | — |