Nodes/ComfyUI Impact Pack/Make Mask List
ComfyUI Node Runs on cloud

Make Mask List

Wire up several masks and get them back as a list

By ltdrdata·Created 3 years ago·Updated 4 months ago· 3,242
Make Mask List
  • mask1
  • MASK

The list-mode sibling to Make Mask Batch. Both take a handful of separately-wired masks and combine them into one output you can feed downstream - the difference is entirely in how whatever's downstream then processes them.

List vs batch, briefly

A MASK list is ComfyUI's list-execution mode: a node consuming it runs once per item, looping through each mask in turn. A MASK batch (what Make Mask Batch produces instead) is a single stacked tensor a node processes all at once. They look similar on the wire - both are typed MASK - but they behave completely differently once they hit a consuming node, and picking the wrong one is a genuinely confusing error to debug, because the type-check passes and the failure shows up as unexpected looping (or the lack of it) rather than a clean type mismatch.

Use list mode when you actually need per-item control - different processing per mask, or feeding something built around list execution (a per-region loop, for instance). If you just want one pass over everything stacked together, Make Mask Batch is the one you want instead.

The input and output

mask1 (MASK) is the input the schema shows as required, but in practice you connect as many masks as you have - the node grows extra slots the same way Make Mask Batch does, following the pattern the pack uses across its "Make X List / Make X Batch" nodes.

Output is a single MASK, but flagged as a list (is_list: true in the node's own schema) rather than a batch - so whatever you plug it into will iterate over it rather than treating it as one combined tensor.

Installing it

No separate install for this node - it comes with the pack. Via ComfyUI Manager: search ComfyUI Impact Pack, Install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack
cd ComfyUI-Impact-Pack
pip install -r requirements.txt

(portable: python_embeded\python.exe -m pip install -r requirements.txt), restart. No models - this is pure workflow plumbing.

Common issues

The main trap is the same one as its batch sibling: connecting this where a batch was expected, or vice versa. Because both output a MASK-typed connection, ComfyUI's own validation won't catch a list/batch mismatch for you - it'll just behave oddly (a node that should run once per mask runs once total, or a node expecting a single stacked tensor chokes on an iterator). If a downstream node's behavior looks off after inserting one of these, that's the first thing to check.

Beyond that, list execution in ComfyUI has its own quirks worth knowing if you're not used to it: nodes downstream of a list input run once per item and their own outputs become lists too, which can cascade in ways that surprise you if you weren't expecting the whole downstream chain to start iterating. If a workflow suddenly seems to be running "N times" after you added this node, that's list execution doing exactly what it's supposed to - not a bug.

CategoryImpactPack/Util

Inputs (1)

NameTypeDefaultDescription
mask1MASK

Outputs (1)

NameTypeDescription
MASKMASK