Nodes/jayhuang-zip-unpack-images/PromptList (Unlimited)
ComfyUI Node

PromptList (Unlimited)

Wire up to 64 prompts into one batch list

By jayhuangaigc·Created 8 months ago·Updated 8 months ago· 4
PromptList (Unlimited)
    • prompt_list
    • prompt_strings
    ◄prompt_1►
    ◄prompt_2►
    ◄prompt_3►
    ◄prompt_4►
    ◄prompt_5►
    ◄prompt_6►
    ◄prompt_7►
    ◄prompt_8►
    ◄prompt_9►
    ◄prompt_10►
    ◄prompt_11►
    ◄prompt_12►
    ◄prompt_13►
    ◄prompt_14►
    ◄prompt_15►
    ◄prompt_16►
    ◄prompt_17►
    ◄prompt_18►
    ◄prompt_19►
    ◄prompt_20►
    ◄prompt_21►
    ◄prompt_22►
    ◄prompt_23►
    ◄prompt_24►
    ◄prompt_25►
    ◄prompt_26►
    ◄prompt_27►
    ◄prompt_28►
    ◄prompt_29►
    ◄prompt_30►
    ◄prompt_31►
    ◄prompt_32►
    ◄prompt_33►
    ◄prompt_34►
    ◄prompt_35►
    ◄prompt_36►
    ◄prompt_37►
    ◄prompt_38►
    ◄prompt_39►
    ◄prompt_40►
    ◄prompt_41►
    ◄prompt_42►
    ◄prompt_43►
    ◄prompt_44►
    ◄prompt_45►
    ◄prompt_46►
    ◄prompt_47►
    ◄prompt_48►
    ◄prompt_49►
    ◄prompt_50►
    ◄prompt_51►
    ◄prompt_52►
    ◄prompt_53►
    ◄prompt_54►
    ◄prompt_55►
    ◄prompt_56►
    ◄prompt_57►
    ◄prompt_58►
    ◄prompt_59►
    ◄prompt_60►
    ◄prompt_61►
    ◄prompt_62►
    ◄prompt_63►
    ◄prompt_64►

    The batch-prompt problem is older than half the packs in ComfyUI: you have eight prompts, you want eight images, and you don't want to run the graph eight times by hand. The usual answer is a node with a few hardcoded prompt slots, which is fine until "a few" isn't enough. This node's whole gimmick is that the slots keep appearing as you use them - up to 64 of them - and every non-empty prompt comes out as one list, ready to drive a batch.

    How it works

    On the backend it's deliberately boring: 64 multiline STRING inputs named prompt_1 through prompt_64, all forced to be inputs rather than widgets. The frontend does the fun part. It starts by showing just prompt_1. Connect a wire to the last visible prompt port and the next one appears, keeping exactly one empty prompt below your last used one until you hit the 64-port ceiling. No scrolling through 64 blank boxes hoping to find the one you're on.

    On execution it collects every connected input that has non-empty text, sorts them by their slot number, and returns the same list twice - once as prompt_list and once as prompt_strings. Both outputs are identical STRING lists; the duplication is just convenience so you can grab prompts from either side of a wiring layout without crossing wires. Since the outputs are true list outputs, ComfyUI fans them out: connect prompt_list to a CLIP Text Encode and each prompt becomes one execution in the batch, all the way down the graph.

    What you actually set

    There's exactly one required input, prompt_1. Everything else is optional and appears on demand. The thing to internalize is that these are all input ports, not text boxes - to get text into them you wire a STRING source in. That's fine for the node's real use (aggregating several prompt sources - captions from a Load ZIP, wildcard expansions, a handful of text primitives - into one list), but it means a beginner expecting to type prompts directly into the node will be confused. If that's what you wanted, a plain text primitive wired into prompt_1 gets you there.

    Installing

    It ships in the same pack as the ZIP nodes, so the install is identical:

    cd ComfyUI/custom_nodes
    git clone https://github.com/aixqueen/jayhuang-zip-unpack-images.git
    

    Restart ComfyUI (or ComfyUI Manager → search jayhuang-zip-unpack-images). No models, no extra dependencies, and the auto-grow behavior comes from the pack's JS - it should just work after the frontend reloads.

    Gotchas

    The category is listed as "Crush/Prompt," which is not a thing you'll find anywhere else in ComfyUI - it's just where this author filed it, so search for the display name "PromptList (Unlimited)" or the class easy promptList (Unlimited) when you're looking. And a port only reveals when a wire lands on it, so if you type text into the visible prompt without connecting it, the next slot won't appear - connect first, then fill. Same pack caveat as everywhere: small single-commit repo, no community footprint, so treat it like any unknown custom node and eyeball the code once before building production on it.

    CategoryCrush/Prompt

    Inputs (64)

    NameTypeDefaultDescription
    prompt_1STRING—
    prompt_2optSTRING—
    prompt_3optSTRING—
    prompt_4optSTRING—
    prompt_5optSTRING—
    prompt_6optSTRING—
    prompt_7optSTRING—
    prompt_8optSTRING—
    prompt_9optSTRING—
    prompt_10optSTRING—
    prompt_11optSTRING—
    prompt_12optSTRING—
    prompt_13optSTRING—
    prompt_14optSTRING—
    prompt_15optSTRING—
    prompt_16optSTRING—
    prompt_17optSTRING—
    prompt_18optSTRING—
    prompt_19optSTRING—
    prompt_20optSTRING—
    prompt_21optSTRING—
    prompt_22optSTRING—
    prompt_23optSTRING—
    prompt_24optSTRING—
    prompt_25optSTRING—
    prompt_26optSTRING—
    prompt_27optSTRING—
    prompt_28optSTRING—
    prompt_29optSTRING—
    prompt_30optSTRING—
    prompt_31optSTRING—
    prompt_32optSTRING—
    prompt_33optSTRING—
    prompt_34optSTRING—
    prompt_35optSTRING—
    prompt_36optSTRING—
    prompt_37optSTRING—
    prompt_38optSTRING—
    prompt_39optSTRING—
    prompt_40optSTRING—
    prompt_41optSTRING—
    prompt_42optSTRING—
    prompt_43optSTRING—
    prompt_44optSTRING—
    prompt_45optSTRING—
    prompt_46optSTRING—
    prompt_47optSTRING—
    prompt_48optSTRING—
    prompt_49optSTRING—
    prompt_50optSTRING—
    prompt_51optSTRING—
    prompt_52optSTRING—
    prompt_53optSTRING—
    prompt_54optSTRING—
    prompt_55optSTRING—
    prompt_56optSTRING—
    prompt_57optSTRING—
    prompt_58optSTRING—
    prompt_59optSTRING—
    prompt_60optSTRING—
    prompt_61optSTRING—
    prompt_62optSTRING—
    prompt_63optSTRING—
    prompt_64optSTRING—

    Outputs (2)

    NameTypeDescription
    prompt_listSTRING—
    prompt_stringsSTRING—