ComfyUI Node

Aggregator (20)

The pack's final form, and a caution about scale

By itom0717·Created 8 months ago·Updated 19 days ago· 1
Aggregator (20)
    • combined_prompt
    ◄text_01►
    ◄text_02►
    ◄text_03►
    ◄text_04►
    ◄text_05►
    ◄text_06►
    ◄text_07►
    ◄text_08►
    ◄text_09►
    ◄text_10►
    ◄text_11►
    ◄text_12►
    ◄text_13►
    ◄text_14►
    ◄text_15►
    ◄text_16►
    ◄text_17►
    ◄text_18►
    ◄text_19►
    ◄text_20►

    Aggregator (20) is what the pack looks like when you commit fully: one node with twenty text inputs, combining them into a single prompt. It's the bigger sibling of Aggregator (10), built for the workflow where every block - character, art style, emotion, both poses, four clothing slots, background, camera, all five extras - gets its own selector and everything funnels through here on the way to the CLIP text encode.

    Here's the caution, stated plainly: twenty prompt blocks is a lot of prompt. The prompt-engineering evidence keeps pointing the same direction - past a few strong concepts, extra tokens start diluting rather than helping, and on LLM-encoded models there's a real attention cap in the 75–100 effective token range. If you wire twenty full blocks in and the output starts drifting, the aggregator isn't broken; your prompt is. Use the slots, don't use all of them.

    How it works

    Twenty optional inputs, text_01 through text_20 (STRING, forceInput), one output: combined_prompt (STRING). It joins connected inputs in numeric order with a comma between blocks, skips empty or unconnected pins entirely, and finishes each block with a newline. Same engine as the 10-input version - this is just the 20-lane edition.

    Inputs and outputs

    • text_01 … text_20 - wire your selectors' text outputs here, in the order you want them in the final prompt.
    • combined_prompt - the assembled STRING. Feed it to your CLIP text encode's positive input (or run it through a PreviewAny/show-text node first to eyeball the result).

    Install

    ComfyUI Manager → search "Prompt String Selector", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/itom0717/ComfyUI-Prompt-String-Selector.git
    

    Restart. No dependencies - the whole pack is the Python standard library, so install is the least of your worries.

    Gotchas

    Input order is output order - worth repeating because with twenty inputs it's easy to wire text_15 above text_03 and forget. And the empty-pin-skip behavior cuts both ways: it keeps unused blocks out of your prompt, but it also means a selector accidentally left on 01_none contributes nothing. If output starts looking thin, check your no-op blocks. The pack's README even mislabels the 20-node as "input 10" in one table cell - trust the node's actual twenty inputs over the docs.

    CategoryPrompt String Selector

    Inputs (20)

    NameTypeDefaultDescription
    text_01optSTRING—
    text_02optSTRING—
    text_03optSTRING—
    text_04optSTRING—
    text_05optSTRING—
    text_06optSTRING—
    text_07optSTRING—
    text_08optSTRING—
    text_09optSTRING—
    text_10optSTRING—
    text_11optSTRING—
    text_12optSTRING—
    text_13optSTRING—
    text_14optSTRING—
    text_15optSTRING—
    text_16optSTRING—
    text_17optSTRING—
    text_18optSTRING—
    text_19optSTRING—
    text_20optSTRING—

    Outputs (1)

    NameTypeDescription
    combined_promptSTRING—