Nodes/BrainDead Nodes/BD Prompt Iterator (Dynamic)
ComfyUI Node

BD Prompt Iterator (Dynamic)

Twenty prompt slots on one node — BD Prompt Iterator (Dynamic)

By BizaNator·Created 9 months ago·Updated 10 days ago· 15
BD Prompt Iterator (Dynamic)
    • prompt
    • filename
    • current_index
    • total_count
    • status
    • seed
    ◄modesequential►
    ◄filename_modeauto_index►
    ◄base_filenameoutput►
    ◄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►
    ◄suffixes►
    ◄filename_template{base}_{index:03d}►
    ◄manual_index0►
    ◄resetfalse►
    ◄generation_seed-1►
    ◄seed_modeincrement_batch►
    ◄workflow_iddefault►

    Some prompts want to come from elsewhere in the graph - a text file, a previous node, a database, another LLM - rather than being typed into a multiline box. BD Prompt Iterator (Dynamic) is the iterator for that case: it exposes up to 20 separate string inputs (prompt_1 through prompt_20) that you wire in, and it cycles through whichever of them are connected, generating filenames as it goes. Each slot is also a plain editable box, so you can mix wired and typed prompts freely.

    It's the middle child of the BrainDead iterator family, and it slots neatly between the two others. The basic BD Prompt Iterator takes one multiline list; the Advanced one adds suffix and seed control. The Dynamic variant trades the single-list convenience for flexibility about where the prompts come from - if you're pulling a prompt list from a node upstream, or you want per-prompt inputs that a larger workflow can drive, this is the one. It still gives you the Advanced node's seed output and filename machinery, which is nice.

    What you get

    The essentials match its siblings: mode (sequential/manual/single), base_filename, workflow_id for state namespacing, manual_index, reset, generation_seed + seed_mode, and the seed output for wiring into a sampler. Filename control comes via filename_mode (auto_index by default), suffixes, and filename_template (default {base}_{index:03d}). Outputs: prompt, filename, current_index, total_count, status, seed.

    The default template dropping the {suffix} (unlike the Advanced node) is a small but real difference - the Dynamic node's defaults are tuned for "just give me indexed names."

    Install

    Same pack, no surprises: ComfyUI Manager search "BrainDead", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/BizaNator/ComfyUI-BrainDead
    cd ComfyUI-BrainDead
    pip install -r requirements.txt
    

    Restart, find it under 🧠BrainDead/Prompt. It's a V3-API pack, so update ComfyUI if the nodes don't register.

    The honest caveat

    Twenty slots is a lot of canvas. If most of your prompts come from one upstream source, the basic iterator's single multiline box is cleaner and easier to read - don't wire twenty inputs just because you can. The Dynamic version earns its space when prompts genuinely arrive as separate signals, or when you're building a reusable template where the slots are meant to be filled by a human each run. One thing to remember, shared with the whole family: iteration state is in-memory, so restarting ComfyUI resets the index, and the seed output only helps if you actually wire it into your sampler. It's a straightforward node that hides its sharp edges in those two details.

    Category🧠BrainDead/Prompt

    Inputs (30)

    NameTypeDefaultDescription
    modeCOMBOsequential4 options: sequential, manual, random, single
    filename_modeCOMBOauto_index3 options: auto_index, suffix_list, template
    base_filenameSTRINGoutput—
    prompt_1optSTRING—
    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—
    suffixesoptSTRING—
    filename_templateoptSTRING{base}_{index:03d}—
    manual_indexoptINT00–9999—
    resetoptBOOLEANfalse—
    generation_seedoptINT-1-1–2147483647—
    seed_modeoptCOMBOincrement_batch4 options: fixed, increment_batch, increment_prompt, random
    workflow_idoptSTRINGdefault—

    Outputs (6)

    NameTypeDescription
    promptSTRING—
    filenameSTRING—
    current_indexINT—
    total_countINT—
    statusSTRING—
    seedINT—