List Get Item
The tiny node that unblocks ComfyUI's lists
- list_or_tuple
- item
List Get Item is the smallest node in the ComfyUI-PanelComposer pack, and the one you'll forget exists until the exact moment you need it. It does one thing: reach into a list or tuple and hand you a single element. That sounds trivial, until you realize ComfyUI has no built-in node for it at all - and that the pack's whole panel_dimensions output is, underneath the custom socket, just a Python list you can't plug into anything.
Why a panel pack ships its own index node
In a PanelComposer workflow, Panel Layout Provider outputs panel_dimensions: one (width, height) pair per panel, in reading order. Your job is to generate each panel image separately, which means getting each panel's width and height into an EmptyLatentImage (or whatever feeds your sampler chain). But an EmptyLatentImage width socket is an INT - and a list is not an INT. ComfyUI flat-out refuses that wire. List Get Item is the adapter: index into the list, pull out panel 3's (w, h), and now you've got a single value you can route onward.
The wildcard type is what makes this work. Both the input and the output here are the type "*" - ComfyUI's escape hatch that matches any socket, the same machinery every switch and "anything" node in the ecosystem rides on. So this node isn't married to PANEL_DIMENSIONS. It'll index into any list-typed thing any pack hands you, which is exactly the "one list type needs a consumer" gap the pack's author was filling.
The inputs that matter
list_or_tuple- anything with a length. Wirepanel_dimensionshere, or any other list.index- which element to return, default 0. Negative indices work Python-style, so -1 is the last element.
One behavior worth knowing before you hit it: out-of-range indices don't error. Ask for element 99 of a 6-panel list and it clamps to the last one; ask for -99 and you get the first. It prints a warning to the console when it clamps, which is easy to miss mid-generation.
How to install it
List Get Item ships in ComfyUI-PanelComposer, so you get all four nodes in the pack at once:
cd ComfyUI/custom_nodes
git clone https://github.com/INuBq8/ComfyUI-PanelComposer
Then restart ComfyUI. ComfyUI Manager users can just search "PanelComposer" and install from there. No extra dependencies, no requirements.txt, no model downloads - it leans on Pillow, which ComfyUI already ships.
Common issues
The two real failure modes are an empty input and a non-indexable input, both of which raise a clear ValueError telling you exactly what happened. The quieter trap is the clamping: an out-of-range index silently returns the nearest end, so if your panels come out in the wrong order, check the index before you blame your sampler. And remember what you pulled out - for panel_dimensions that's a (w, h) tuple, still not a wireable INT. That's what Tuple Unpack, the pack's other list utility, is for: splitting the pair into separate width and height sockets that EmptyLatentImage will actually accept.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| list_or_tuple | * | — | |
| index | INT | 0-1000000–1000000 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| item | * | — |