Nougan Lora Loader π
A LoRA stack editor that doesn't make you squint at text menus
- model
- clip
- MODEL
- CLIP
- lora_stack
The stock LoRA loader is fine until you have a hundred LoRAs and you're hunting for the one you want by reading a plain dropdown. Winnougan built this node because he has thousands of LoRAs stashed away and wanted to search them visually - that's the origin story, straight from his r/StableDiffusion suite announcement. NouganLoraLoader is a themed LoRA stack editor: favourites, folder filters, a randomizer, per-LoRA on/off toggles, and strengths that don't cap at 1.0.
How it works
The mechanism underneath is a standard comfy.sd.load_lora_for_models apply - you're not getting exotic math, you're getting a better interface over the same operation. The twist is that everything you do in the panel serializes into a hidden lora_data JSON widget, which is what actually saves into the workflow. The UI manages: search/filter by folder, star favourites, reorder entries, toggle each on or off, and a π² randomizer slot that can roll a random LoRA from a folder on each queue.
It also emits a lora_stack output in the LORA_STACK type that some other packs' loaders consume - so if you use a stack-aware workflow, this doubles as a stack builder.
The inputs that matter
model- required, the model to patch.lora_data- managed by the UI; the JSON is the workflow-persisted state.clip- optional. Connect it to apply LoRAs to the text encoder too (you usually want this).
Outputs: MODEL, CLIP, and lora_stack (the LORA_STACK list of (name, model_strength, clip_strength) tuples).
Installing
Search Nougan in ComfyUI Manager, or:
cd ComfyUI/custom_nodes
git clone https://github.com/Winnougan/Nougan_Nodes
# restart ComfyUI
Zero pip dependencies, like the rest of the pack, and each family boots in its own try/except.
Where people get burned
Two things. First, strength here isn't the classic 0β1; it's clamped to Β±10, and the community habit of running LoRAs at 1.0 is 2026-era advice that doesn't transfer - on Krea/Flux-family models people routinely run higher, so don't assume the old SDXL rules apply (the KB's LoRA panel makes the same point). Second, the randomizer: the frontend bakes auto-roll picks into lora_data on every queue, which is why the node's IS_CHANGED keys on that JSON - it guarantees downstream nodes re-run and you actually see the new roll. If you're queueing multiple times and seeing the same result, check whether the randomizer's auto-roll is actually enabled rather than blaming the sampler. It's the loader you keep once you have a real LoRA collection - which is the whole point of it.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | β | |
| lora_data | STRING | {} | Managed by the Nougan Lora Loader UI. |
| clipopt | CLIP | β |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | β |
| CLIP | CLIP | β |
| lora_stack | LORA_STACK | β |