Join Strings (CRT)
The two-string glue node you'll outgrow (but want anyway)
- text
Join Strings (CRT) does exactly one thing: it takes two strings, puts a separator between them, and outputs the result. That's it. There's no list handling, no batching, no randomization - it's the smallest node in the CRT-Nodes text drawer, and it's useful precisely because it's that boring.
You'll meet this node when you want to build a prompt from parts. Maybe a base prompt on one side and a style suffix on the other. Maybe a filename prefix plus a timestamp. Maybe a trigger-word list you've trimmed with Remove Lines, glued onto a quality phrase. Two inputs, string_a and string_b, both multiline, one separator (defaults to a space), one text output.
The mechanism, such as it is
string_a + separator + string_b, verbatim, in that order. If separator is a space you get "a b"; set it to ", " and you get a clean comma join; set it to "\n" and the two halves stack. Whatever you type in the separator is what goes between them - there's no smart comma handling, so if you want to join "a," and "b" cleanly you either type the comma into string_a or make the separator ", ".
That simplicity is the whole pitch. It never reorders, never dedupes, never surprises you. When a workflow suddenly needs a string glued from two sources, this is the drop-in.
Where it fits in the CRT suite
CRT-Nodes leans hard into prompt-batch workflows - there's a String Batcher that merges any number of strings with a separator, a Dynamic Prompt Scheduler that turns prompt lists into conditioning batches, and batch samplers that eat them. In that family, Join Strings is the "just two values, right now" option. You will absolutely outgrow it the moment you need three or more parts, and that's fine - that's when you reach for the String Batcher instead, which does the same joining job for N inputs with line consolidation and optional randomization thrown in.
Install
Part of the pack, so the standard drill:
cd ComfyUI/custom_nodes
git clone https://github.com/PGCRT/CRT-Nodes.git
pip install -r requirements.txt
Or ComfyUI Manager, search "CRT-Nodes", install, restart. No model downloads, no per-node dependencies - this one is pure Python string concatenation and can't meaningfully break. The only real gotcha is the separator defaulting to a single space, which is easy to forget if you're joining two halves of a prompt and wondering where the space came from. That, and remembering string_a is always first: swapping the inputs changes the result, and the node won't tell you.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| string_a | STRING | — | |
| string_b | STRING | — | |
| separator | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |