Fooocus Loader
The checkpoint loader that thinks it's a preset
- optional_lora_stack
- pipe
The Fooocus Loader is where a Fooocus-style generation actually starts, and you can tell it was written by someone who wanted the app's "just works" feel in a node. It's a checkpoint loader that also holds your prompts, your resolution, your refiner, and your LoRA stack - the way ComfyUI's own CheckpointLoader doesn't. One node, one pipe out, everything else plugs in behind it.
What it loads
- base_model_name - your SDXL checkpoint, from
ComfyUI/models/checkpoints. The default isjuggernautXL_v8Rundiffusion.safetensors, which is a strong hint about what this pack was built to reproduce: Juggernaut was the default photoreal pairing for Fooocus's realistic preset for a long stretch. Any SDXL checkpoint works. - vae_name - defaults to
Baked VAE, i.e. use the VAE inside the checkpoint. That's usually right; only switch to an external VAE if you're chasing a specific fix. - refiner_model_name + refiner_switch + refiner_swap_method - the refiner setup. Fooocus used a second SDXL refiner checkpoint that kicks in partway through sampling (
refiner_switchdefault 0.5 = halfway). Default is None, which is honestly the sane modern choice. - clip_skip - default 2. This is Fooocus's A1111-compatibility move: skip the last CLIP layer so pasted CivitAI prompts behave as their authors intended. Leave it at 2.
The prompt side
positive and negative are right here on the loader (multiline), so you can skip the pack's separate Positive/Negative nodes if you're lazy - wire them, or type here; same result. resolution gives you a dropdown of SDXL-friendly sizes (default 1024 x 1024), and empty_latent_width / empty_latent_height let you override with any multiple-of-8 number. image_number is how many variants to generate per run - the pack's built-in batch.
Optional input: optional_lora_stack, which is where the Fooocus LoraStack node plugs in.
Output: a single pipe (PIPE_LINE) carrying model, clip, vae, conditioning and latent to the next Fooocus node.
Installing
The pack install is the standard one - ComfyUI Manager, search "Fooocus Nodes", or git clone the repo into custom_nodes and restart. The model files are on you: the loader can't conjure a checkpoint, and the default Juggernaut is a ~7GB download from CivitAI. One real-world note: the README's clone URL currently 404s because the author's GitHub account was renamed or removed, so if the clone fails, Manager is the path that still works.
The trap
This is an SDXL loader, full stop. Drop it into a Flux workflow and nothing lines up - the pack is a reproduction of Fooocus, and Fooocus is permanently SDXL. If you want to pair a specific LoRA, load it through the LoraStack before the loader, or the stack never gets applied. And if you're wondering where the KSampler is: this loader preps the pipe, the PreKSampler tunes it, and the Fooocus KSampler actually samples.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| base_model_name | COMBO | juggernautXL_v8Rundiffusion.safetensors | 0 options: |
| vae_name | COMBO | 1 options: Baked VAE | |
| refiner_model_name | COMBO | None | 1 options: None |
| refiner_switch | FLOAT | 0.50.1–1 | — |
| refiner_swap_method | COMBO | 3 options: joint, separate, vae | |
| clip_skip | INT | 2-24–12 | — |
| positive | STRING | — | |
| negative | STRING | — | |
| resolution | COMBO | 1024 x 1024 | 22 options: 512 x 512, 512 x 768, 768 x 512, 576 x 1024, 768 x 1024, 768 x 1280, +16 |
| empty_latent_width | INT | 102464–2048 | — |
| empty_latent_height | INT | 102464–2048 | — |
| image_number | INT | 11–100 | — |
| optional_lora_stackopt | LORA_STACK | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| pipe | PIPE_LINE | — |