Wildcard Combine
Roll {the|dice} at runtime, built from other nodes
- wildcard_text
You know the trick: write {brown|blonde|black} hair in a prompt, run a batch, and every image comes back with a different hair color - no retyping, no seeds to fiddle with. That's the old A1111 wildcard syntax, and it's still the cheapest way to build a character-reference library or generate prompt variety. NDBX_WildcardCombine is the ComfyUI node version of that trick: instead of typing the braces and pipes yourself, it builds the {a|b|c} group at runtime from whatever text you wire into it.
What it does, mechanically
It's a subclass of its sibling NDBX_StringCombine, with the prefix/separator/suffix widgets stripped out and the join parameters hardcoded: prefix = "{", separator = "|", suffix = "},". Wire in three text sources and the single output - wildcard_text - comes back as {red|blue|green},. Same dynamic sockets as String Combine: connect to the last one and a new option socket spawns, unplug them and they prune, and empties are dropped.
The point of building it from node outputs rather than typing it: the group contents can be dynamic. Feed it the output of a dynamic-prompt generator, a list of LoRA trigger tags, a text file loader - the choices inside the braces are no longer hard-coded in a text box.
The gotcha that will bite you: nothing resolves it
Here's the part nobody says out loud. ComfyUI core does not roll the dice on {a|b}. If you feed wildcard_text straight into CLIP Text Encode, the braces go through as literal text - you'll generate images that say {red|blue|green} in them. Random selection needs a wildcard resolver node in front, the standard one being ComfyUI-DynamicPrompts (its Random Prompt node). The clean chain is:
...text sources → Wildcard Combine → Dynamic Prompts (Random Prompt) → CLIP Text Encode
Wildcard Combine assembles the group; the resolver does the randomizing. Skip the middle step and you'll swear the node is broken when it's just doing what it says.
The trailing comma
Slightly hidden detail from the source: that suffix = "}," means every group ends with a comma. {a|b|c}, always. In a booru-style tag prompt that's usually harmless - more tags follow anyway - but if you want a bare {a|b|c} at the very end of a sentence, know where the stray comma comes from before you chase it.
Installing it
Same pack as String Combine - matchbull6/ComfyUI-Nodebox. Install once and you get both nodes. ComfyUI Manager → search "ComfyUI-Nodebox", or:
cd ComfyUI/custom_nodes
git clone https://github.com/matchbull6/ComfyUI-Nodebox
Restart ComfyUI after cloning. No requirements.txt, no models to download, nothing to configure.
The honest caveat
The pack is young - the README says it's built by someone learning AI image generation, and as of mid-2026 it has effectively zero community footprint. The code is short and easy to audit, which is reassuring for a node you'll trust with your prompts, but treat any workflow that depends on this pack as an early-adopter dependency, not an industry standard.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| option_1opt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| wildcard_text | STRING | — |