2025-08-23 14:48:27 -04:00
2025-08-23 14:40:22 -04:00
2025-08-23 14:40:22 -04:00
2025-08-23 14:40:22 -04:00
2025-08-23 14:40:22 -04:00
2025-08-23 14:40:22 -04:00
2025-08-23 14:48:27 -04:00

ComfyUI Dynamic Prompting Simplified

A minimal dynamic prompting + mirrored wildcards node for ComfyUI.

Features

  • {a|b|{c|d}} nested choice expansion (deterministic by seed).
  • __name__ loads wildcards/name.txt.
  • __name-mir__ strictly loads wildcards/name-mir.txt.
  • In negative phase, if __name__ is used and name-mir.txt exists, it auto-mirrors to all options except the chosen one.
  • Deterministic selection per seed.

Install

  1. Copy this folder to: <ComfyUI>/custom_nodes/ComfyUI-DynPromptSimplified
  2. (Optional) Put your wildcard files in ComfyUI-DynPromptSimplified/wildcards/ or set wildcard_dir to any folder.
  3. Restart ComfyUI.

Node

DynPrompt Expand (mirrored wildcards)

  • Inputs: text, negative, seed, wildcard_dir, auto_neg_from_mir
  • Outputs: expanded text, expanded negative

Usage

  • positive: positive prompt
  • negative: negative prompt
  • Seed: this is used to determine how the node will select tags
  • allow neg from mir: automatically adds -mir tags to negative prompt without explicitly needing to add it to the negative prompt
    Wire the outputs into your usual CLIP Text Encode node
    You can preview what the output is with the "preview any" node in utils

Examples

Wildcards:

wildcards/hats.txt
{red hat|blue hat|green hat}

wildcards/hats-mir.txt
{red hat|blue hat|green hat}

Prompt:

a portrait wearing __hats-mir__, background {studio|outdoor|cyberpunk}
  • Positive becomes a single chosen hat (by seed).
  • Negative becomes the other hats, comma-separated.

Notes

  • Missing wildcard files resolve to empty strings.
  • Choice/wildcard expansion is capped to prevent runaway recursion.
  • If negative is blank and auto_neg_from_mir is ON, the node scans the positive for __tokens__ and auto-builds a mirrored negative when possible.

License: GPLv3 (same as the original)

S
Description
No description provided
Readme
398 KiB
Languages
Python 100%