⚜️ SDXL Preprocess
All-In-One's plumbing, without the wildcards and style
- clip
- positive
- negative
- LATENT
Same core plumbing as the pack's flagship SDXL All-In-One node - the resolution picker, the CLIP encoding, the empty latent, the final-resolution conditioning trick - with the wildcard resolution, style injection, and seed control stripped out. If All-In-One is "automate everything," this is "handle prompt variety and style myself, just give me the boring plumbing."
What it does, and what it deliberately doesn't
It builds your empty latent at a chosen SDXL-native resolution, CLIP-encodes your positive and negative text, and - like its All-In-One sibling - injects your final expected resolution (base resolution times your upscale factor) into the output conditioning, so SDXL composes correctly for the image size you'll actually end up with after a hi-res pass, not just the starting latent.
What it does not do: resolve __wildcard__ tokens, apply any style, or touch a seed. There's no freeze_wildcards or seed input on this node at all - that absence is the tell. Whatever you type into positive_in and negative_in is exactly what gets CLIP-encoded, word for word.
Inputs and outputs that matter
resolution- the same 26-choice SDXL aspect-ratio enum as All-In-One, default832x1216 (0.68).upscale_factor- 1 to 8, default 2, feeding the same target-resolution conditioning trick.positive_in/negative_in- plain multiline text. Treat any__wildcard__syntax here as inert; it will not resolve.clip- from your checkpoint loader.batch_size- 1 to 4096.
Outputs: positive and negative CONDITIONING, plus a LATENT. No + prompt/- prompt string outputs here - there's nothing to display that differs from what you already typed, since nothing gets rewritten.
When to reach for this instead of All-In-One
If you're building your prompt somewhere else - an LLM-assisted prompt-writing node, or your own explicit chain of a Prompt Box into a standalone Wildcard Processor into a Style Injector - and you want visibility into each step rather than having wildcard and style logic hidden inside one big node, this is the leaner option. Same resolution/latent/conditioning convenience, none of the automation baked in.
Installing it
Via ComfyUI Manager: search Comfyui FOCUS nodes, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/DJ-Tribefull/Comfyui_FOCUS_nodes
Restart ComfyUI. No extra dependencies beyond the pack itself.
Common issues & troubleshooting
You typed __wildcard__ tokens and they show up literally in the image. Expected - this node has no wildcard-resolution logic at all. If you want wildcards, route your text through a standalone Wildcard Processor node first, and feed that node's resolved output into this one's positive_in/negative_in.
Style dropdowns are nowhere to be found. Correct - there's no style input here. If you want style applied without switching to All-In-One, run your text through a standalone Style Injector before it reaches this node.
You're not sure which of the two "front of workflow" nodes to use. If you want wildcards and style handled automatically, use All-In-One. If you want to build and inspect each step yourself, use this one.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| resolution | COMBO | 832x1216 (0.68) | 26 options: 704x1408 (0.5), 704x1344 (0.52), 768x1344 (0.57), 768x1280 (0.6), 832x1216 (0.68), 832x1152 (0.72), +20 |
| upscale_factor | INT | 21–8 | — |
| positive_in | STRING | — | |
| negative_in | STRING | — | |
| clip | CLIP | — | |
| batch_size | INT | 11–4096 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |
| LATENT | LATENT | — |