Nodes/GraftingRayman/GRImageSelector
ComfyUI Node

GRImageSelector

GRImageSelector

By GraftingRayman·Created 2 years ago·Updated about a month ago· 76
GRImageSelector
  • image_1
  • image_2
  • image_3
  • image_4
  • image_5
  • image_6
  • image_7
  • image_8
  • image_9
  • image_10
  • IMAGE

A ten-way image switch. Wire up as many candidate images as you actually have - anywhere from one to ten - and it forwards a single one downstream instead of you having to rewire your graph every time you want to try a different source. It's the kind of node you keep around once you're doing anything with more than a couple of candidate images per run: A/B comparisons, picking the best of a batch, or building a graph where you swap which reference image feeds the rest of the pipeline without touching any other wire.

How it works

All ten image sockets - image_1 through image_10 - are optional, and none of them are required. That's the tell that this is a genuinely flexible switch rather than a fixed multi-input node: connect two, connect all ten, connect just one, it doesn't care. Which slot actually passes through is controlled on the node itself rather than through a separate input socket, so plug in your candidates on the canvas and use the control on the node face to choose which one goes out. That's a common pattern for switch-style nodes in ComfyUI - keeping the selector as a widget rather than a wired input means you don't need an extra node just to hold an index number.

The inputs and outputs that matter

  • image_1 through image_10 (IMAGE, all optional) - your candidates. Only wire what you need; leaving slots empty is expected, not an error state.
  • IMAGE (output) - whichever slot you've got selected, ready to continue into your sampler, save node, or next processing step.

How to install it

Via ComfyUI Manager: search "GraftingRayman", install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/GraftingRayman/ComfyUI_GraftingRayman

then restart ComfyUI. This whole pack shares one non-negotiable dependency - OpenAI's original CLIP package, installed on top of whatever CLIP ComfyUI already ships with:

# portable build
.\python_embeded\python.exe -m pip install git+https://github.com/openai/CLIP.git

# system python
pip install git+https://github.com/openai/CLIP.git

Skip it and the entire pack - this node included - fails to import, even though a plain image switch has nothing to do with CLIP.

Common issues & troubleshooting

Node doesn't appear in your search at all. That's the missing CLIP dependency above, not a problem specific to the selector. The pack imports as one unit; one failed import takes all of it down.

Output is empty or wrong. Double-check which slot you've actually got selected on the node - it's easy to wire a new candidate into, say, image_3 and forget the selector is still pointed at image_1. If you're building a workflow that swaps candidates often, it's worth labeling the node or leaving a note so future-you doesn't lose track of which slot is live.

Comparing to other switch nodes in your graph. If you've also got a general-purpose "any switch" style node from another pack (rgthree's is the common one), the difference here is that GRImageSelector is typed strictly to images with ten fixed slots, versus a generic any-type switch that works across data types but usually with fewer slots. Pick whichever matches how many candidates you're actually juggling - ten dedicated image slots is overkill for a two-way A/B test, and worth it the moment you're past four or five.

Categoryimage/utils

Inputs (10)

NameTypeDefaultDescription
image_1optIMAGE
image_2optIMAGE
image_3optIMAGE
image_4optIMAGE
image_5optIMAGE
image_6optIMAGE
image_7optIMAGE
image_8optIMAGE
image_9optIMAGE
image_10optIMAGE

Outputs (1)

NameTypeDescription
IMAGEIMAGE