ComfyUI Node

Create List

Ten inputs in, one list out — the seed for batch loops

By wenchengxiang·Created 2 months ago·Updated 9 days ago· 3
Create List
  • input_1
  • input_2
  • input_3
  • input_4
  • input_5
  • input_6
  • input_7
  • input_8
  • input_9
  • input_10
  • list

ComfyUI has two ways of thinking about "a bunch of things": batches (tensors stacked along a dimension) and lists (Python lists traveling through * or list-enabled sockets). Most of what you do with a batch is batch math. Most of what you do with a list is iterate - feed one element per pass into a loop, a map-style node, or a per-item processor. Create List is the node that makes the second world: up to ten inputs of any type, and one list comes out the other side.

The inputs are wildcard (*), which is the escape hatch that lets a socket accept anything. So you can gather ten seeds, ten CFG values, ten prompts, or a genuinely mixed grab bag - the node doesn't care, it just appends whatever arrives. One detail worth knowing: if an input is itself already a list, it gets flattened in rather than nested, so you can chain two Create List nodes to build a longer list than ten elements. The source is a straight loop over input_1 through input_10, skipping any that are None.

When does this actually matter for a beginner? When you download a workflow with a loop. A growing number of packs iterate a list of prompts, seeds, or LoRA strengths, and somewhere upstream there has to be a node that turned "these three things" into "a list of three things." That's this node. It also pairs naturally with the same pack's Image List → Image Batch node: build a list of images, then slam them into one batch.

Inputs and outputs that matter

  • input_1 … input_10 (optional) - any type, any mix. Leave the ones you don't need unconnected.
  • list (out) - a list containing every non-null input, in order. The output is * type and marked as a list.

Installing it

It's part of wenchengxiang/ComfyUI-Practical-Tools. ComfyUI Manager → Custom Nodes Manager → search "ComfyUI-Practical-Tools" → Install → restart. Or clone:

cd ComfyUI/custom_nodes
git clone https://github.com/wenchengxiang/ComfyUI-Practical-Tools

and restart ComfyUI. No pip install, no requirements file, no models - pure Python.

Issues and gotchas

Two things to keep in mind. First, the output is untyped - downstream nodes that expect a specific list (say, a list of INTs) may reject a mixed list, so don't get clever mixing types unless you know the consumer tolerates it. Second, the ten-slot ceiling is real: beyond ten values you're chaining two nodes together, which works but is exactly the kind of clutter you were trying to avoid. If your real goal is a single integer, string, or float that feeds many places, a passthrough or core primitive is the better tool - Create List is specifically for "a sequence to iterate," not "one value to share."

CategoryPractical-Tools/utils

Inputs (10)

NameTypeDefaultDescription
input_1opt*—
input_2opt*—
input_3opt*—
input_4opt*—
input_5opt*—
input_6opt*—
input_7opt*—
input_8opt*—
input_9opt*—
input_10opt*—

Outputs (1)

NameTypeDescription
list*—