ComfyUI Node

Text Concatenate

Glue five prompts into one string without a single dropdown

By turnbros·Created 11 months ago·Updated 10 months ago· 0
Text Concatenate
    • text
    separator
    text1
    text2
    text3
    text4
    text5

    Text Concatenate does exactly one boring thing well: it takes up to five text strings and joins them together with a separator you choose, then hands you the result as a single STRING. That's it. No dropdowns of "operations," no hidden magic. In a workflow that's already drowning in nodes, that boringness is the feature.

    You'll reach for it the moment you stop typing prompts as one blob and start composing them from parts. Say you've got a character description from a storage node, a style snippet from another, and a quality tag from a third. Wire each into text1, text2, text3, and they come out the other side as one clean prompt string you can feed straight into a CLIP Text Encode. It's the same job the built-in "Primitive" + string juggling does, just with a tidier contract: you decide the glue.

    The inputs that matter

    Only one input is required: separator, and its default is a newline. That's the detail most people trip on - this node defaults to joining lines, not spaces, because the author set it up for building multi-line prompts where each piece sits on its own row. If you want "cyberpunk, neon, detailed" as one comma-joined string, set separator to , (comma + space). For a space-separated run-on, set it to a single space. You can even glue with \n explicitly if you ever re-order things and the default gets edited away.

    text1 through text5 are all optional, and they're marked forceInput in the schema - meaning they're designed to be wired from other nodes, not typed. You can type into them, but if you just want a labeled text box that outputs its own value, Text Storage is the more honest tool. Text Concatenate earns its keep when at least two of those five wires are populated.

    Output

    One output: text, a STRING. Wire it into any text input on the graph - a CLIP encode, a filename prefix, a LORA prompter, a save node's metadata. Because the output is a plain string, it composes with basically everything else in the ecosystem.

    Installing it

    ComfyBros installs like any custom node pack. Easiest is ComfyUI Manager - search for "ComfyBros" and install, then restart. Or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/turnbros/ComfyBros
    

    Then restart ComfyUI. One quirk: the pack README says pip install -r requirements.txt, but that file doesn't exist in the repo - the real deps (pillow, numpy, requests) are declared in pyproject.toml, and Manager handles those. Don't let the stale README's node list confuse you either; it describes nodes that aren't in the shipped code. Text Concatenate is real and lives under ComfyBros/Text in the node menu.

    Gotchas

    The separator is literal text, so watch for invisible whitespace. And remember the default joins with newlines - if your workflow suddenly produces multi-line prompts where you expected a single line, that's the separator default, not a bug. Change it once, save the workflow, and it's done. For a genuinely thin node, that's the whole troubleshooting list.

    CategoryComfyBros/Text

    Inputs (6)

    NameTypeDefaultDescription
    separatorSTRING
    text1optSTRING
    text2optSTRING
    text3optSTRING
    text4optSTRING
    text5optSTRING

    Outputs (1)

    NameTypeDescription
    textSTRING