Simple Wildcards
{ Cheap | Free | Instant } Prompt Variety
- STRING
Wildcards are the cheapest variety engine in text-to-image: write a { red | blue | green } ball, run a batch, and every image rolls the dice on color. Simple Wildcards does exactly this one thing - the inline { a | b | c } format - with no files to manage, no wordlist folders, no syntax beyond the braces. If you want to batch out variations of a prompt without hand-editing it a dozen times, this is a five-second install that pays for itself on the first run.
It's worth being clear about what it is not, because the name invites confusion. The heavyweight wildcard packs in the ecosystem read __name__-style files that live on disk and can be shared across workflows. This node is the inline-only minimal version: everything lives in the text field in front of you. That's a feature for small jobs - no setup, no file path to break - and a limitation if you were hoping for reusable wordlists.
How it works
Under the hood it's a single regex: it finds every { ... } block, splits the contents on |, and replaces the whole block with one randomly chosen, whitespace-stripped item. Multiple wildcards in one prompt are each resolved independently, so a { red | blue } ball in a { big | small } room becomes any of four combinations - the author's README example is exactly this. The node marks itself as always-changed, so it draws fresh picks on every execution instead of caching the previous resolution.
The inputs and outputs
One input, one output:
text- multiline. Your prompt, with zero or more{ item_a | item_b }expressions anywhere in it.- Output: a single
STRINGwith every wildcard already resolved, ready to wire into a CLIP Text Encode prompt socket.
Gotchas
- No seed, no determinism. Each run re-rolls every block. For batch variation that's the entire point; if you need to reproduce a specific outcome, you'll have to paste the resolved text.
- No nesting. The regex grabs up to the first closing brace, so nested wildcards like
{ big | { red | blue } }will not behave the way you hope. Keep your wildcards flat. - It's inline-only. No file-based sets, no
__prompt__library. If your workflow needs a big shared wordlist, this is the wrong node - the file-driven wildcard packs own that job. - Because it always re-executes, expect the node to re-roll whenever ComfyUI re-evaluates the graph - that's the designed behavior, not a bug.
Install via ComfyUI Manager (search ComfyUI-Bricolage) or:
cd ComfyUI/custom_nodes
git clone https://github.com/sheldongriffin/ComfyUI-Bricolage
Then restart ComfyUI. No model downloads, no dependencies beyond the pack's Pillow/torchvision. It's a tiny node from a personal-repo pack with no support guarantee, but its entire failure surface is a regex - which is to say, there's not much here to go wrong.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |