Concatenate Lists
Append One List to Another, Nothing Else
- list_items_1
- list_items_2
- list_items
Concatenate Lists is the most honest node in the Skoogeer-Noise pack: it appends one list onto another, period. Take any two list-valued sockets, get one list back with all the items of the first followed by all the items of the second. No deduplication, no merging by key, no reordering - just list1 + list2. It's a plumbing node, and plumbing nodes earn their keep in unexpected places.
Where you'll actually use it: merging prompt batches from two Mustache Template branches into one batch for a single render pass, combining MUSTACHE_VARIABLE_LIST outputs from two sampler nodes, or appending items to a list before it hits a downstream batching node. Because it's fully generic (it never looks at what the items are), one node handles strings, variable sets, images, anything.
How it works
Both inputs are list-aware sockets, so the node receives the whole lists rather than individual items, and it simply does list_items_1 + list_items_2. Item types don't need to match between the two inputs in the sense that the node won't try to reconcile them - but be aware that a downstream node receiving a mixed-type list may not be so forgiving. The output is a single list-valued socket of the same "kind" as its inputs.
The inputs that matter
list_items_1- first list.list_items_2- second list, appended after the first.
Output: list_items - the concatenation.
Installing it
Part of Skoogeer-Noise. Manager → search "Skoogeer-Noise", or:
cd ComfyUI/custom_nodes
git clone https://github.com/ttulttul/Skoogeer-Noise
Restart ComfyUI. Deps are torch, numpy>=1.26, einops, pyyaml>=6.0.3 - nothing extra.
Common gotchas
The big one is picking the wrong tool in the mustache workflow. ConcatenateLists appends - if you have two branches producing different variables (camera_lens from one, person_masc from the other) and you want each rendered prompt to contain keys from both, this is the wrong node. That's what Merge Mustache Variable Sets is for, and it's right there in the same pack. Concatenate is for growing a batch, merge is for combining per-entry data. Also remember it's two inputs - if you've got three lists, chain two nodes. And don't expect any sorting or dedup; what you put in is exactly what comes out.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| list_items_1 | * | First list-valued input to concatenate. | |
| list_items_2 | * | Second list-valued input to concatenate after list_items_1. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| list_items | * | — |