Concatenate Strings (ERPK)
Glue your text nodes together
- STRING
The boring nodes are the ones that save you. This one joins up to ten text inputs into a single STRING, with a configurable delimiter - and once you start wiring LLM nodes together, you'll reach for it constantly. Claude says one thing, a prompt builder says another, your wildcard file says a third; this node is the splice point.
There's no local-compute drama here: it's a pure string operation, runs instantly, costs nothing, and doesn't touch any API.
What you set
- Delimiter - how inputs get joined. Defaults to a newline, and it understands escapes:
\nfor newlines,\tfor tabs. You can also just type a literal separator like", ". - Include Labels - off by default. When on, each text gets prefixed with its matching
Label N. - Label on Same Line - whether the label sits on the same line as its text or on its own line. Only matters if
Include Labelsis on. - Label 1–10 / Text 1–10 - the actual content. Text inputs are multiline; the UI lets you add and remove slots dynamically (the pack's frontend adds an Add/Remove control and visual separators between the config and input sections).
Empty text inputs are skipped, so you can leave slots dangling - handy when you're conditionally building a prompt from sources that may or may not fire.
Output
One output, STRING - the joined result. Wire it into any node's prompt input, a save-text node, or Preview Anything to sanity-check it.
Install
Part of the ERPK Collection:
cd ComfyUI/custom_nodes
git clone https://github.com/eRepublik-Labs/comfyui-nodes-erpk.git erpk
cd erpk && pip install -r requirements.txt
Restart ComfyUI. Or ComfyUI Manager → search erpk → ERPK Custom Nodes. No API key, no models - it's pure utility.
The one trap is escape-sequence enthusiasm: if you type \n in the delimiter expecting a literal backslash-n, you'll get newlines (that's the feature), and if that's wrong, use \\n to get the literal two characters. And note the skipped-empty behavior - it's a feature, but it means "delimiter between every slot" isn't what you get if slots are empty; an empty first input won't produce a leading delimiter.
Inputs (23)
| Name | Type | Default | Description |
|---|---|---|---|
| Delimiteropt | STRING | \n | Separator between texts. Use \\n for newlines, \\t for tabs. |
| Include Labelsopt | BOOLEAN | false | Prefix each text with its label. |
| Label on Same Lineopt | BOOLEAN | true | Place label on same line as text, or on a separate line. |
| Label 1opt | STRING | — | |
| Text 1opt | STRING | — | |
| Label 2opt | STRING | — | |
| Text 2opt | STRING | — | |
| Label 3opt | STRING | — | |
| Text 3opt | STRING | — | |
| Label 4opt | STRING | — | |
| Text 4opt | STRING | — | |
| Label 5opt | STRING | — | |
| Text 5opt | STRING | — | |
| Label 6opt | STRING | — | |
| Text 6opt | STRING | — | |
| Label 7opt | STRING | — | |
| Text 7opt | STRING | — | |
| Label 8opt | STRING | — | |
| Text 8opt | STRING | — | |
| Label 9opt | STRING | — | |
| Text 9opt | STRING | — | |
| Label 10opt | STRING | — | |
| Text 10opt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |