String Shelf Connector
Join your shelf fragments into one prompt, your way
- text
Shelf fragments are meant to be combined - a character string, an outfit string, a scenery string don't do much alone. String Shelf Connector is the node that stitches them into one prompt, and it's the least glamorous node in the pack, which is exactly why it earns its place. No state, no saved data, no key system: it's a pure text joiner with a delimiter.
The inputs are refreshingly boring. delimiter is a single-line string - default is a space, and for tag-based models you'll almost certainly set it to ", " so your comma-separated fragments read like a proper booru-style prompt. Then there's string_1, which is where the dynamic behavior kicks in: more inputs appear as you connect them, so you can chain three, four, or a dozen string sources and the node grows to match. The output is a single text string: every connected string_N input, joined in numeric order by the delimiter.
Mechanically it's exactly what it looks like. The node sorts its string_ inputs by the trailing number, skips any that are unconnected (None), and does delimiter.join(...) on the rest. That means ordering is stable and disconnected slots are simply ignored - you never get an empty gap where a source used to be. The example in the README says it all: delimiter ", ", strings masterpiece, best quality, cinematic lighting → masterpiece, best quality, cinematic lighting.
Wire the output into the positive input of a CLIP Text Encode and you've got a full prompt assembled from reusable parts - the classic plumbing pattern of one value fanned in from several sources, turned into a single wire. If you already use one of the heavyweight prompt-builder packs, this is the lighter, do-one-thing version of that same idea.
Install is the whole pack in one shot, and it's the easy kind. ComfyUI Manager search for comfyui-prompt-shelf, or:
cd ComfyUI/custom_nodes
git clone https://github.com/timonknispel/comfyui-prompt-shelf
Restart ComfyUI, refresh the browser, and it's under the Prompt Shelf category. No requirements.txt, no models, nothing that can conflict with your other nodes.
The one thing that will annoy you: trailing commas in your fragments compound with the delimiter. The pack's own bundled outfits example ends its text with a comma, so joined with a ", " delimiter you'd get a double separator. It doesn't break anything - LLM-style encoders largely ignore it, and tag-based models are tolerant - but it's ugly in the preview. Keep trailing commas out of your saved fragments if you use a comma delimiter, and you'll never see the double separator again.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| delimiter | STRING | — | |
| string_1opt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |