Nodes/comfyui-rb-command/RB Command Input Bundle Pass
ComfyUI Node

RB Command Input Bundle Pass

The Node That Does Nothing, On Purpose

By itribs·Created 10 days ago·Updated 3 days ago· 0
RB Command Input Bundle Pass
  • bundle
  • bundle

This node takes a bundle in and hands the same bundle back out. Nothing is copied, converted, filtered or counted. If you're reading this because you found it in the node list and can't work out what it's for - that's the correct reaction, and the answer is "graph layout," not data.

What it is

RB Command Input Bundle Pass belongs to the same small pack as RB Command and its Input Bundle node, in the utils/command category. It has one optional input, bundle, of type RB_COMMAND_INPUT_BUNDLE, and one output, bundle, of the same type. It doesn't run anything, and it can't be the end of a workflow.

It exists for routing. The README's own framing is that it's useful for fanning a single bundle out to multiple RB Command nodes rather than dragging wires across a large canvas. Mechanically that's honest, but be aware of the asterisk: ComfyUI already lets you connect one output to as many inputs as you like, so this isn't unlocking a capability. What it gives you is a place - an anchor you can drop in the middle of a messy region, label, and move as a unit. Tools like this are the reason a workflow stays readable; the plumbing layer is where legibility lives.

If your graph is small and legible already, you don't need this node. A plain reroute will carry a bundle wire too. Reach for the Pass node when you want an obvious junction in a workflow you're going to rewire next week.

How it works, exactly

The implementation is four lines and worth knowing because it explains the node's one surprising behaviour: the function signature defaults bundle to None and returns bundle or []. So an unconnected Pass node doesn't output nothing - it outputs an empty bundle. Downstream, RB Command treats that as a connected bundle with zero items: {inputN_count} resolves to 0, {inputN} resolves to an empty string, and anything that indexes into it - {inputN_0} - fails hard at execution with Bundle input_N has 0 item(s), but {inputN_0} references index 0. That error means your Pass node has no bundle upstream, not that your index is wrong.

Two things it deliberately won't do:

  • It doesn't merge. Feed two bundles into two Pass nodes and you don't get one big bundle. Each stays separate.
  • It doesn't rescue you from bundle nesting. Wiring a Pass output into an Input Bundle node's slot is allowed while you're connecting (* accepts anything) and then rejected at execution: Bundle nodes cannot receive another bundle's output. Chain all you want between Pass nodes; the moment a bundle ends up as an item of another bundle, the pack says no.

Installing the pack

cd ComfyUI/custom_nodes
git clone https://github.com/itribs/comfyui-rb-command
pip install -r requirements.txt

Restart ComfyUI. ComfyUI Manager will also find it if you search "RB Command". Dependencies are numpy, Pillow and scipy - no models, no torch pinning, nothing that threatens your existing environment. Windows users should note the sibling command node defaults to /bin/bash and will need executable pointed at a shell they actually have.

Worth knowing before you rely on it

There is essentially no community signal on this pack. A search of the Reddit corpus for its author turns up nothing, and the project has a handful of commits. That's not a reason to avoid it - it's a reason to read the code when a claim matters, which is how the empty-bundle behaviour above got documented.

And the standing caveat for the whole pack: RB Command executes shell commands with your user's permissions. Any custom node could do that, but this pack makes it the point. Don't queue strangers' workflows, and don't expose that instance to a network you don't control.

Categoryutils/command

Inputs (1)

NameTypeDefaultDescription
bundleoptRB_COMMAND_INPUT_BUNDLE

Outputs (1)

NameTypeDescription
bundleRB_COMMAND_INPUT_BUNDLE