Extensions/WFA Node Suite (WaifuArchitect)
ComfyUI Extension

WFA Node Suite (WaifuArchitect)

WFA Node Suite (WaifuArchitect) for ComfyUI: High-performance utility and refiner nodes including Batch Prompt Loader & Interactive Label Filter UI, Loop Iterator & Auto-Shutdown, 100-input lazy Index Switch, Find & Replace, and Full-Image Refiners.

By WAonGHub·Created 22 days ago·Updated 2 days ago· 1
WAonGHub/ComfyUI-WA-Suite
Nodes48
On cloudLocal install
CategoryWFA Node Suite/Refiners, WFA Node Suite/Prompts
Stars1
Updated2 days ago

Nodes (48)

WFA Advanced Full Image Refiner ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Advanced Full Image Refiner (Pipe) ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Batch Prompt Loader ⚡ (WFA Suite)
WFA Node Suite/Prompts
WFA Batch Prompt Switcher ⚡ (WFA Suite)
WFA Node Suite/Prompts
WFA Character LoRA Cockpit ⚡ (WFA Suite)
WFA Node Suite/Cockpit
WFA Cockpit Pipe In ⚡ (WFA Suite)
WFA Node Suite/Cockpit
WFA Cockpit Pipe Out ⚡ (WFA Suite)
WFA Node Suite/Cockpit
WFA Edge-Targeted Refiner ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Edge-Targeted Refiner (Pipe) ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Exact Impact Refiner ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Exact Impact Refiner (Pipe) ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Find & Replace 10 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 100 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 20 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 30 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 40 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 50 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 60 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 70 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 80 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Find & Replace 90 ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Full Image Refiner ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Full Image Refiner (Pipe) ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Generation Deck ⚡ (WFA Suite)
WFA Node Suite/Cockpit
WFA Index Switch 10 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 100 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 20 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 30 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 40 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 50 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 60 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 70 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 80 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Index Switch 90 ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA INT Index Switch ⚡ (WFA Suite)
WFA Node Suite/Switches
WFA Loop Iterator ⚡ (WFA Suite)
WFA Node Suite/Iterators
WFA Loop Shutdown ⚡ (WFA Suite)
WFA Node Suite/Iterators
WFA Model Upscale & Scale ⚡ (WFA Suite)
WFA Node Suite/Upscaling
WFA Outfit & Perspective Resolver ⚡ (WFA Suite)
WFA Node Suite/Prompts
WFA Prompt Counter ⚡ (WFA Suite)
WFA Node Suite/Iterators
WFA Prompt Inspector ⚡ (WFA Suite)
WFA Node Suite/Cockpit
WFA Prompt Label Filter ⚡ (WFA Suite)
WFA Node Suite/Prompts
WFA Remove Banned Tags ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Save Prompt .txt ⚡ (WFA Suite)
WFA Node Suite/IO
WFA Smart Mask Refiner ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Smart Mask Refiner (Pipe) ⚡ (WFA Suite)
WFA Node Suite/Refiners
WFA Tag Banlist Switch ⚡ (WFA Suite)
WFA Node Suite/Strings
WFA Text Index Switch ⚡ (WFA Suite)
WFA Node Suite/Strings
Readme

WFA Node Suite (ComfyUI-WA-Suite)

High-performance utility & refiner node suite for ComfyUI by WA (WaifuArchitect). Search wfa in ComfyUI to quickly bring up all nodes in this suite without colliding with WAS Node Suite.

Included Nodes

1. WFA Index Switch (10 / 20 / 30 / 40 / 50 / 60 / 70 / 80 / 90 / 100) ⚡ (WFA Suite)

  • Category: WFA Node Suite/Switches
  • Variants:
    • 10 sizes from WFA Index Switch 10 ⚡ up to WFA Index Switch 100 ⚡ (in steps of 10).
  • Features:
    • 1-Click Upgrade / Resize (+10, -10, or Any Size 10–100): Right-click any Index Switch node to ⚡ Expand +10 Inputs, ⚡ Shrink -10 Inputs, or jump to any size (10 to 100) in-place while keeping all connected wires, custom row labels, index connection, title, and colors.
    • Wildcard Inputs (0 … $N-1$): Accepts any data type (MODEL, LATENT, IMAGE, STRING, CONDITIONING, CLIP, VAE, etc.).
    • True Lazy Evaluation: Uses ComfyUI's native check_lazy_status so only the upstream branch connected to the selected index is executed. All other branches are completely ignored.
    • Numbered Gutter & Alternating Dark/Light Grey Rows: Matches the visual layout of WFA Text Index Switch with alternating row shading and active green row indicator.
    • Clickable & Writeable Row Labels: Click any row to type a custom name right next to its connection dot (replaces static input_28 labels; use Enter/Up/Down to move between rows).
    • Wire & Label Reordering Shortcuts:
      • Click a row number (0–99): Sets index to that slot.
      • Ctrl + Click a row number: Inserts an empty slot at that row and shifts all connected wires & labels below it down by 1.
      • Shift + Click (or Alt + Click) a row number: Deletes that row and pulls all connected wires & labels below it up by 1.

2. WFA Find & Replace (10 / 20 / 30 / 40 / 50 / 60 / 70 / 80 / 90 / 100) ⚡ (WFA Suite)

  • Category: WFA Node Suite/Strings
  • Variants:
    • 10 sizes from WFA Find & Replace 10 ⚡ up to WFA Find & Replace 100 ⚡ (in steps of 10).
  • Features:
    • 1-Click Upgrade / Resize (+10, -10, or Any Size 10–100): Right-click any Find & Replace node to ⚡ Expand +10 Entries, ⚡ Shrink -10 Entries, or jump to any size (10 to 100) in-place while keeping all connected wires, typed text, custom slot labels, title, and colors.
    • Direct ● text Input Socket: Clean connection dot at the top instead of a bulky multiline textbox.
    • Simultaneous (Single-Pass) Mode: Compiles all active search strings into a single LRU-cached pass with $O(1)$ lookup per match.
    • Sequential (Chained) Mode: Applies replacements in order (1 $\rightarrow$ $N$) using fast C-level str.replace.
    • Supports Case Sensitive and Regular Expression (use_regex) toggles.

3. WFA Text Index Switch ⚡, WFA INT Index Switch ⚡ & WFA Tag Banlist Switch ⚡ (WFA Suite)

  • Categories: WFA Node Suite/Strings (WFA Text Index Switch, WFA Tag Banlist Switch) & WFA Node Suite/Switches (WFA INT Index Switch)
  • Features:
    • Row Number Gutter (0, 1, 2, …): Displays line indices directly next to the text box so you never have to manually type /*0*/, /*1*/, etc.
    • Alternating Dark Grey & Light Grey Rows: Zebra-striped row backgrounds that automatically expand if a long prompt or label wraps onto multiple visual lines.
    • Click-to-Select, Insert & Delete Rows:
      • Click a row number in the left gutter to set select to that index.
      • Ctrl + Click a row number to insert a new blank row there and push all rows below it down by 1.
      • Shift + Click (or Alt + Click) a row number to delete that row and pull all rows below it up by 1.
    • WFA INT Index Switch ⚡: Dedicated INT-only version with the exact same 100-row labeled UI, outputting only selected_index (INT) without STRING output or strip_comment_index.
    • WFA Tag Banlist Switch ⚡: 100 selectable tag-banlist rows (0–99) in one node! Connect your main prompt to ● text, select which banlist row to apply (e.g. Row 0 = empty/none, Row 1 = /*LOOKING AWAY*/ *eyes*, eyelashes, smile, open mouth, etc.), and it cleanly filters out banned tags while preserving prompt casing, weights (tag:1.2), ((grouped tags)), and {dynamic|prompts}.
    • WFA Remove Banned Tags ⚡: Compact file-based banned tag remover that reads any selectable .txt banlist inside ComfyUI-WA-Suite/banlists/ (ships with banned_tags.txt and banned_tags2.txt, and automatically discovers any new .txt files you add to banlists/). Includes Smart Text & Tag Filter (handles lines with or without trailing commas, matches longest phrases first so lips never eats half of red lips, removes (tag:1.2) weights cleanly, and live-reloads .txt edits on save), plus LP Text Mode and LP Tag Mode.
    • Backwards-Compatible Paste (strip_comment_index on Text Index Switch): Automatically strips leading /*0*/, /*1*/ prefixes if you paste prompts from older selector nodes.

4. WFA Full Image Refiners ⚡ (WFA Suite)

  • Category: WFA Node Suite/Refiners
  • Included Refiner Nodes (Standard + BASIC_PIPE Variants):
    • WFA Full Image Refiner ⚡ (WFA Suite) & (Pipe)
    • WFA Advanced Full Image Refiner ⚡ (WFA Suite) & (Pipe) — Adds pre-sharpening (unsharp mask) and pre-refinement bicubic upscale/downscale.
    • WFA Exact Impact Refiner ⚡ (WFA Suite) & (Pipe) — Emulates Impact Pack's full-image crop refinement with differential diffusion and InpaintModelConditioning support.
    • WFA Edge-Targeted Refiner ⚡ (WFA Suite) & (Pipe) — Generates a Sobel edge mask (EDGE_MASK) to focus refinement on edges and details.
    • WFA Smart Mask Refiner ⚡ (WFA Suite) & (Pipe) — Combines Sobel edge detection, morphological dilation, base mask level, and Gaussian blur (SMART_MASK).

5. WFA Loop Iterator ⚡, WFA Loop Shutdown ⚡ & WFA Prompt Counter ⚡ (WFA Suite)

  • Category: WFA Node Suite/Iterators
  • Features:
    • WFA Loop Iterator ⚡: All-in-one INT counter, auto-rewinder (reset_to $\rightarrow$ end_index), multi-pass loop counter (total_loops), and ImpactQueueTrigger replacement in a single node. Stops cleanly without throwing red RuntimeError crashes, cancels on 1 click, and includes a ↺ Reset Counter button.
    • WFA Loop Shutdown ⚡: Compact overnight power-saving copy of WFA Loop Iterator. Waits until the very last image finishes generating and saving to disk, runs a configurable safety countdown (delay_sec, default 60s) with a live ✖ ABORT SHUTDOWN button on the node, and then cleanly unloads GPU VRAM, closes ComfyUI, and executes your chosen after_run power action (Shut Down PC, Sleep PC, Hibernate PC, Close ComfyUI, or Do Nothing).
    • WFA Prompt Counter ⚡: Reads the total prompt count (count) and 0-based end_index (count - 1) from Inspire Pack Batch Prompts (ZIPPED_PROMPT outputs, --- formatted prompt strings, or .txt files in inspire_prompts), multiline prompt lists, or any ComfyUI LIST. Connect its end_index output directly into WFA Loop Iterator's end_index!

6. WFA Save Prompt .txt ⚡ (WFA Suite)

  • Category: WFA Node Suite/IO
  • Features:
    • Replaces 8+ string concat, LoRA Stack -> String, filename builder, and Save Text nodes with one compact all-in-one node.
    • Automatic Sub-Subfolder & Matching image_path Output: Saves to <ComfyUI output>/<subfolder>/<character>/<character><separator><prompt_index>.txt (when char_folder is enabled) and outputs image_path (subfolder/character/character_index_) ready to wire straight into your Save Image node so images and .txt logs always land in the same folder with matching names.
    • Used Model Logger (model): Connect a checkpoint/model name (STRING / COMBO) or wire a MODEL / PIPE link directly — automatically traces the upstream loader to log the exact .safetensors model filename under [MODEL].
    • Built-In LORA_STACK Converter: Wire your lora_stack directly into lora_stack (no external converter node needed!) — formats <lora:name:model_wt:clip_wt> automatically and skips "None" slots.
    • Direct INT or STRING prompt_index Input: Wire your WFA Loop Iterator index straight in without needing an INT to String node.
    • Dedicated Prompt Inputs: Optional sockets for raw_prompt, raw_negative, refined_prompt, final_prompt, and final_negative (cleanly skips any unconnected/empty inputs, with optional [SECTION] headers toggle and overwrite / append / auto_number modes).

7. WFA Batch Prompt Loader ⚡, WFA Batch Prompt Switcher ⚡ & WFA Prompt Label Filter ⚡ (WFA Suite)

  • Category: WFA Node Suite/Prompts
  • Features:
    • WFA Batch Prompt Loader ⚡: Single-node, zero-warning replacement for Inspire Pack's Load Prompts From File + Unzip Prompt + 9+ embedded regex extractor nodes:
      • Title-Aware & Zero Console Spam: Natively understands ----\nTITLE\n---- headers, top banners, and trailing scratchpad notes without printing invalid prompt format warnings in the console.
      • Clean key: value Sections + 5-Character Future-Proofing: Directly parses width:, height: (or hight:), size: (896x1152), batchsize:, sdxl_lora:, sdxl_strength:, anima_lora:, anima_strength:, and up to 5 character toggles (c1:–c5: or chars: C1, C2) right out of each prompt block.
      • 100% Backwards-Compatible Legacy Parsing: Automatically extracts existing /*{{{width}}}[[[height]]][[{batch}]][{{sdxl_idx}}]{[{sdxl_str}]}[}{anima_idx}{]{[}anima_str{]}[{[c1]}]{[[c2]]}*/ negative metadata blocks and strips only that control block while preserving /*AVOID, */ and all other Find & Replace placeholders.
      • Standalone or Filter-Controlled: Works completely standalone (prompt_file + index) OR controlled via the label_filter wire from WFA Prompt Label Filter ⚡. Automatically discovers .txt files from both ComfyUI-WA-Suite/prompts/ and ComfyUI-Inspire-Pack/prompts/ with sub-millisecond RAM mtime caching.
    • WFA Batch Prompt Switcher ⚡: Upgraded copy of WFA Batch Prompt Loader ⚡ that consolidates 12–15 external Switch nodes directly into the loader with zero inactive-branch latency:
      • 1-to-1 Mirrored Single-UI Input Sockets: Mirrors positive, negative, title, width, height, batch_size, sdxl_lora, sdxl_strength, anima_lora, anima_strength, and c1_enable–c5_enable directly across from their matching output sockets.
      • True Lazy Evaluation (check_lazy_status): When use_batch is Batch File, your Single UI upstream branches are completely skipped; when use_batch is Single UI, the batch filter upstream branch is skipped.
      • Independent file_batch Switch: Separate boolean switch (Batch File vs UI Input) lets you override batch_size from your UI even while running prompts & settings from the batch .txt file.
      • Automatic Prefix Stripping: Automatically strips leading "positive:" from the positive input and leading "negative:" from the negative input so pasted prompts work cleanly without extra regex nodes.
    • WFA Prompt Label Filter ⚡: Clean dark-themed cockpit UI node designed to sit directly inside your ComfyUI dashboard:
      • Auto-Detects Extendable [LABEL] Tags: Scans all prompt titles in the selected .txt file for bracket labels (e.g. [CORE], [MODERN], [MEDIEVAL], [GS], [PREG], [TAIL], [F1]–[F3], [M1]–[M2], or any new [CUSTOM] tag you invent on demand) and renders interactive checkboxes with per-label prompt counts.
      • Live Prompt Counter & Quick Controls: Shows real-time ● Active: X / Y count before you even queue, with All, None, Inv, ↻ (disk rescan), and Ctrl+Click to solo any label.
      • 3 Filter Modes: Allowed Only (skips any prompt carrying an unchecked label), Match ANY (OR), and Match ALL (AND).
      • Zero-Cycle Wiring with Loop Iterator: Connect WFA Prompt Label Filter.end_index $\rightarrow$ WFA Loop Iterator.end_index, WFA Prompt Label Filter.label_filter $\rightarrow$ WFA Batch Prompt Loader.label_filter, and WFA Loop Iterator.index $\rightarrow$ WFA Batch Prompt Loader.index.

Example .txt Prompt Format

----
[CORE] [MODERN] [F1] Standing Outdoor Portrait
----
width: 896
height: 1152
sdxl_lora: 2
sdxl_strength: 0.5
anima_lora: 1
anima_strength: 0.5
c1: true
c2: false
c3: false
c4: false
c5: false
positive: 1girl, solo, standing, city street, soft sunlight
negative: /*AVOID, *//*SCENEneg, *//*NEGATIVE, */lowres, blurry

8. WFA Model Upscale & Scale ⚡ (WFA Suite)

  • Category: WFA Node Suite/Upscaling
  • Features:
    • Combines Load Upscale Model + Upscale using Model + Upscale Image By into one compact, fast node.
    • Supersampled Downscaling / Sharpening: Defaults to scale_by: 0.50 + bicubic so 4x upscale models cleanly produce crisp 2x supersampled images without bloated 4K dimensions.
    • RAM Model Caching & OOM-Safe Tiling: Caches the loaded .pth/.safetensors upscale model across batch loop iterations (zero repeated disk loads) and runs tiled GPU execution with automatic OOM fallback and VRAM offloading.
    • Fused NCHW Post-Resize: Rescales directly on the model's (B, C, H, W) tensor before permuting back to ComfyUI BHWC, eliminating two full-size 4K tensor transposes.
    • 1-Click / Wireable enabled Bypass Switch: Set enabled to Bypass (or wire a dashboard boolean toggle) to pass image straight through in 0ms without needing an external Switch/Bypass node.
    • Outputs: image (IMAGE), width (INT), height (INT), plus a live resolution status pill above the node (896×1152 → 1792×2304 (4x × 0.50)).

9. WFA Cockpit UI Suite ⚡ (Character LoRA Cockpit, Generation Deck, Prompt Inspector + Cockpit Pipe In / Out)

  • Category: WFA Node Suite/Cockpit
  • Zero-Clutter Single-Wire WFA_PIPE Architecture:
    • Every dashboard UI card has only a single pipe socket row (o pipe ──▶ pipe o) at the top—zero bulky input/output socket stacks eating up your dashboard!
    • Chain all 3 dashboard cards cleanly (Character LoRA Cockpit $\rightarrow$ Generation Deck $\rightarrow$ Prompt Inspector) and handle all backend intakes/outputs in just 2 hidden backend helper nodes (WFA Cockpit Pipe In ⚡ & WFA Cockpit Pipe Out ⚡).
  • Features:
    • WFA Character LoRA Cockpit ⚡: 5-slot (C1–C5) interactive character LoRA dashboard card replacing 8–20+ LoRA Switch, Override, Solo Strength, Multi/Duo Strength, LoRA Picker, and <lora:name:wt> / LORA_STACK nodes:
      • Each row (C1–C5) provides [✓ C#] UI toggle, [Ovr] Batch-Override lock, an instant-search filterable LoRA picker, and inline S (Solo) + M (Multi/Duo) strength inputs, plus a live <lora:...> tag preview footer.
      • Header ⚡ Auto / Batch / UI mode pill automatically syncs with Generation Deck's Prompts: File / UI switch when chained in Auto mode.
    • WFA Generation Deck ⚡: Unified center-column control panel replacing 13–15+ separate primitive nodes in one aligned dark dashboard card:
      • PKG (Package Name) + Prompts: File / UI (use_batch) + File / Manual B-Size (file_batch) + Batch Size.
      • Interactive 2D Aspect Ratio & Resolution Pad: Live dotted 2D <canvas> pad with proportional W × H frame preview, 1:1 diagonal guide, aspect ratio & megapixel badge (7:9 • 1.03MP), smooth pointer-capture dragging (Shift+Drag locks 1:1 Square, Alt+Drag scales keeping current aspect ratio), W ⇄ H swap, ÷16 / ÷32 alignment snap, and 3×2 preset chips (832×1216, 896×1152, 1024², 1152×896, 1216×832, 768×1344).
      • Sampler, Seed & Refiner Grid: Steps, CFG, Sampler, Scheduler (wildcard-compatible with any KSampler/Refiner), Seed (increment / fixed / randomize / decrement + 🎲 New Seed button, auto-advancing on every queued generation), Refiner %, and Refiner × scale.
      • 4 Customizable Feature Toggle Pills (toggle_1–toggle_4): Click to toggle true/false (e.g. Color Match, 2nd Refiner, Upscale 2x, 3rd Refiner); Shift + Click any pill to rename it.
    • WFA Prompt Inspector ⚡: Merges Final Prompt + Token Log into one dark syntax-highlighted viewer:
      • Displays live ● N tok count (exact model tokens when clip is wired via Pipe In, or fast BPE estimate), LoRA count, Copy button, and an automatic amber ⚠ /*...*/ warning badge if any unreplaced template placeholder remains.
      • Switch between color-highlighted Prompt view (<lora:...> emerald, (weight:1.2) cyan, {a|b} violet, /*UNREPLACED*/ amber) and per-tag Tokens breakdown table.
    • WFA Cockpit Pipe Out ⚡ & WFA Cockpit Pipe In ⚡: Consolidate all 31 backend outputs (Pipe Out) and backend intakes (c1_enable–c5_enable, lora_stack_in, final_prompt, clip on Pipe In). Wiring Pipe Out.pipe + final_prompt + clip into Pipe In at the end of prompt compilation pushes live exact token breakdowns back to an upstream WFA Prompt Inspector with zero graph cycles.

10. WFA Outfit & Perspective Resolver ⚡ (WFA Suite)

  • Category: WFA Node Suite/Prompts
  • Features:
    • Replaces 20+ ImpactLogicalOperators + Node Status Switch + Find & Replace overlap/exception gates with one compact, zero-wire-spaghetti node powered by an editable, hot-reloading .txt rulesheet (ComfyUI-WA-Suite/rules/outfit_conflicts.txt).
    • Automatic Camera Perspective & Reveal Detection: Scans the assembled prompt for @view angles (BACK, BELOW, ABOVE, SIDE, or default FRONT — supporting simultaneous combinations like BACK + BELOW) and directional reveal modifiers (open shirt vs backless vs shirt lift, skirt lift, upskirt, sitting + ~spread legs, etc.).
    • 2-Stage Occlusion $\rightarrow$ Combo Engine:
      • Stage 1 (HIDE / REPLACE): Strips occluded inner garments (e.g. hides bra / chest sarashi under an open shirt / open hanfu when viewed from behind, or panties under a skirt / aoqun without a reveal trigger), resolves Facial & Eye Occlusions (facing away strips all 260+ categories of facial features/eyes/bangs unless looking back; closed eyes strips all eye colors, pupils, sclera, and open-eye states while keeping eyelashes/eyebrows/lips; eyepatch / one eye covered singularizes <color> eyes $\rightarrow$ <color> eye and hides heterochromia), and rewrites/cleans front-only tags on back views (open shirt => shirt, (open crimson hanfu:1.15) => (crimson hanfu:1.15), cleavage, partially unbuttoned) while preserving <lora:...> tags, /*...*/ comments, and outer group weights like (white shirt, lace bra:1.2) $\rightarrow$ (white shirt:1.2).
      • Stage 2 (COMBO): Evaluates layer synergies ((panties under pantyhose:1.1), pants under skirt, pants under dress) after Stage 1 so occluded items never trigger combos — eliminating separate exclusion (EX) nodes! Supports both PLACEHOLDER /*...*/ replacement (with automatic unused-placeholder cleanup) and inline tag injection.
      • Stage 3 (+NEG / NEG): Appends triggered negative safety reinforcements (e.g. bra, bra straps on clothed BACK views) to an optional negative passthrough so LoRAs don't draw occluded garments over outer clothes.
    • False-Positive Immunity & Multi-Character Scoping: Word-boundary matching (~bra never hits braided hair, bracelet, or no bra; ~dress + -~dress shirt never hits maid headdress or white dress shirt), plus Auto (Per [Char: ...] + Global) scoping so [CharA: ...] and [CharB: ...] resolve their own outfits independently while inheriting global camera angles.
    • Hot-Reloading .txt Rulesheets: Edit rules/outfit_conflicts.txt (or drop new .txt presets into rules/) and save — changes take effect immediately on the very next run without restarting ComfyUI.

Installation

Via ComfyUI-Manager

  1. Open ComfyUI-Manager $\rightarrow$ Custom Nodes Manager and search for WFA, or
  2. Click Install via Git URL and paste https://github.com/WAonGHub/ComfyUI-WA-Suite.

Manual Installation

cd ComfyUI/custom_nodes
git clone https://github.com/WAonGHub/ComfyUI-WA-Suite.git