SelectImageList
Pick one image out of a list, not a batch
- images
- image
ComfyUI has two different ways of holding "more than one image," and they look identical on the wire but behave completely differently underneath: a batch (one stacked tensor) and a list (separate images produced one at a time, usually by something running in ComfyUI's list-execution mode - exactly what this pack's own JobToList triggers). SelectImageList is for the second kind. If your images came out of a sweep or a loop rather than a single batched sampler call, this is the selector node you want.
How it works
The node is marked to receive its inputs as Python lists rather than the normal single value per call - that's what makes it "list-aware" rather than "batch-aware." Because ComfyUI applies that list treatment to every input on the node, not just the images, the select index itself technically arrives wrapped in a list too, and the node unwraps it before using it. Once it has a plain index, it indexes into the list of images the same way its batch sibling does - including the same forgiving behavior: ask for an index past the end of the list and it clamps down to the last image instead of erroring.
The inputs and outputs that matter
images(IMAGE) - a list of separate images, not a stacked batch. This is what you get downstream of a node running in list mode.select(INT, default 0, min 0, max 99999) - zero-based index into that list.image(IMAGE, output) - the one image you picked, output as a normal single image from here on.
How to install it
Via ComfyUI Manager: search "comfyui-job-iterator", install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/ali1234/comfyui-job-iterator
Restart ComfyUI. No dependencies, no model downloads - same as the rest of this pack.
Common issues & troubleshooting
Wiring looks right but the selection seems off, or the node errors on connection. This is almost always the batch-vs-list mixup - ComfyUI labels both as plain IMAGE sockets, so nothing on the graph visually tells you which one you actually have. If the upstream node produces its output through normal batched execution (a single sampler call with batch_size > 1), you want SelectImageBatch, not this node. If the upstream node is running once per item - which is the whole mechanism this pack's job-iteration nodes rely on - you want this one. When in doubt, try the other selector; one of the two will behave correctly and the other won't.
You always get the last image regardless of the index. Same clamp-to-last-item behavior as the batch version: an index beyond the length of your list doesn't error, it just quietly falls back to the final item. Worth checking the actual list length (how many steps your sweep produced) before assuming the index itself is wrong.
Honest gap: the exact mechanics of ComfyUI's list-execution mode (why some nodes run once per item and others run once on a whole batch) aren't something the knowledge base has a dedicated writeup on yet - this article's explanation comes from reading the pack's own source rather than a documented ComfyUI concept page. If you're chaining this into a bigger sweep and something behaves unexpectedly, the ComfyUI docs on "list vs batch" execution are worth a direct read.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| select | INT | 00–99999 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |