List: from Elements (lab)
Build a list by hand from individual values — no files, no parsing
- list
- count
Sometimes you don't have a string to split and you don't have a file to read. You have three specific seeds, or two prompts, or a small set of CFG values you can count on one hand, and you just want to hand them to a Queue node as a list. That's the entire job of List: from Elements (lab): you add input slots, drop a value into each, and out comes a LIST.
How it works
The node has no fixed inputs in its definition - the frontend adds them for you dynamically. Drag a wire onto the node and you get element 1, element 2, and so on, each accepting any type (*). When it runs, it just collects whatever's in those slots in order and returns them as one list, plus a count INT telling you how many elements you assembled.
Because the slots are * (any type), this node will happily mix types - a string, a float, and an INT all in one list. Whether that's a feature or a footgun is up to you.
Inputs and outputs
- Inputs:
element 1,element 2, ... - dynamic, any type, added as needed. - Outputs:
list(LIST) andcount(INT).
That's the whole schema. If you're coming from the pack's other list nodes, note the contrast: List: from String (lab) parses a delimited string and gives you conversion options; List: from File (lab) reads a whole file from the backend. This one is the "curated by hand" option, and it's the right tool whenever your list is short and hand-typed.
Where people get burned
Type consistency is on you. Wire a mixed list into the Queue node's dim1 and then into a KSampler cfg input, and the "what you send is what you get" rule means the sampler sees strings where it wants floats - instant error. For number-ish lists, keep the elements all the same kind, or run the output through the pack's conversion utilities before it hits the sampler.
Also worth knowing: because the slots are dynamic, a saved workflow carries your element values with it, so someone loading your graph gets the same list - no file to miss, nothing external to break. That portability is actually the main reason to pick this over ListFromFile for small lists.
Install
Standard ComfyLab Pack story. ComfyUI Manager → search ComfyLab Pack, or:
cd ComfyUI/custom_nodes
git clone https://github.com/bugltd/ComfyLab-Pack.git
cd ComfyLab-Pack
pip install -r requirements.txt
Restart ComfyUI, done. No model downloads; the pack's only heavy dependency is opencv-python.
Inputs (0)
No inputs
Outputs (2)
| Name | Type | Description |
|---|---|---|
| list | LIST | list |
| count | INT | number of values |