ScarlotSoft String Concat DINO
The string joiner that speaks GroundingDINO — dots are the whole point
- DINO_PROMPT
ScarlotSoft String Concat DINO is the sibling of the suite's plain String Concat, and the difference is a punctuation mark: instead of joining your strings with spaces, it joins them with ". " and guarantees the result ends in a period. That may sound pedantic until you remember what it's feeding.
GroundingDINO - the text-prompted object detector that teams up with SAM in the Grounded-SAM combo (covered in the KB's masking-detection doc) - takes its query as a string of phrases. The convention is that each phrase is its own sentence separated by periods: "a red dress. a person. a dog." gets you boxes around all three. Comma-separated and space-joined prompts get misparsed or come back with fewer detections than you asked for. This node is built to produce exactly that format.
The mechanism is small but deliberate. Up to twenty input_0–input_19 string sockets, same auto-growing UI as its sibling. Before joining, it strips each incoming string of trailing whitespace and any stray dots you typed - so "1girl." and "1girl" both come out clean - then joins with ". " and appends a final period. The output socket is even named DINO_PROMPT so you can't mistake what it's for.
The workflow it wants to live in: several strings feeding this node, its STRING output wired into a GroundingDINO box-prompt input (or a Grounded-SAM style pipeline), and the resulting boxes turned into masks for inpainting or detailing. If you're assembling a multi-object query from parts - a tagger feeding subject tags, a fixed prefix feeding a style qualifier - this saves you from hand-formatting "dog. cat. bird." every time.
Install
Same pack, same steps as every ScarlotSoft node. ComfyUI Manager, search "ScarlotSoft", install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/scarlotsoft/ComfyUI_ScarlotSoft
Restart. No extra dependencies for this node itself - though whatever detector you pipe its output into (Ultralytics, Grounded-SAM, Impact Pack) will bring its own.
The honest take
If you never touch GroundingDINO, you don't need this node - the plain String Concat will do, or core ComfyUI's concatenation nodes. But the niche is real: DINO prompt formatting is finicky, and a node that enforces the period convention for you removes one fiddly failure mode from a pipeline that already has plenty. Keep in mind it only formats; it doesn't validate that your phrases are things DINO actually recognizes. Garbage in, garbage out - the periods just make the garbage easier for DINO to read.
Inputs (20)
| Name | Type | Default | Description |
|---|---|---|---|
| input_0opt | STRING | — | |
| input_1opt | STRING | — | |
| input_2opt | STRING | — | |
| input_3opt | STRING | — | |
| input_4opt | STRING | — | |
| input_5opt | STRING | — | |
| input_6opt | STRING | — | |
| input_7opt | STRING | — | |
| input_8opt | STRING | — | |
| input_9opt | STRING | — | |
| input_10opt | STRING | — | |
| input_11opt | STRING | — | |
| input_12opt | STRING | — | |
| input_13opt | STRING | — | |
| input_14opt | STRING | — | |
| input_15opt | STRING | — | |
| input_16opt | STRING | — | |
| input_17opt | STRING | — | |
| input_18opt | STRING | — | |
| input_19opt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| DINO_PROMPT | STRING | — |