ComfyUI Node

Combine Lora Stacks

Merge two LoRA bundles into one, order intact

By kinorax·Created 5 months ago·Updated about a month ago· 2
Combine Lora Stacks
  • lora_stack1
  • lora_stack2
  • lora_stack

Most ComfyUI users meet LoRAs through a loader node: pick a file, set a strength, done. This pack works differently. Here a lora_stack is a first-class data object - a list of (name, strength) pairs that flows through the graph as metadata, gets stored in image_info, and is only actually applied to a model much later (via Lora Stack Lorader or Use Loaded Model). Once you're in that world, you'll eventually want to merge two stacks into one. That's exactly what Combine Lora Stacks does.

It's a two-input, one-output utility with no logic to speak of, which is precisely why it's reliable. You feed it a base stack and a variant stack, and you get a single combined stack back.

How it works

The node concatenates lora_stack1 and lora_stack2 in order - first stack's entries first, then the second stack's. Order is preserved, not sorted or deduplicated, and that matters more than it sounds: LoRA application is sequential and order-sensitive, so the combined stack means "apply all of stack 1, then all of stack 2," and downstream code sees exactly that. If one input is left unconnected, the node just passes the other through; if both are empty, you get nothing out.

That's the whole mechanism, and it's worth saying the absence of cleverness is a feature. This is a data-assembly node, not a model node - no weights are loaded, no VRAM is touched, and nothing is applied yet.

Why you'd actually use it

Think of it as the metadata-friendly sibling of rgthree's Power Lora Loader. Power Lora Loader is a single node where you stack a dozen LoRAs with per-entry toggles and it applies them in one go - great when the graph is the source of truth. This pack's approach separates "which LoRAs" from "apply them," so the stack can ride along inside your saved image_info and reproduce itself when you load the image later. Combine Lora Stacks is the piece that lets you build that stack out of smaller, reusable pieces: a "character base" stack and a "style overlay" stack, for instance, kept as separate bundles and combined at the point of use. Swap the style overlay and the character base stays untouched.

The two inputs that matter

  • lora_stack1 - the first stack; appears first in the combined output.
  • lora_stack2 - the second stack, appended after the first.

One output: lora_stack, ready to feed Lora Stack Lorader, Use Loaded Model, Image Info Context, or anywhere else in the pack that consumes stacks. The source itself calls the inputs "first" and "second" - there's no right-hand-wins semantics to worry about, no merging of strengths, just an append.

Installing

It's part of the kinorax/comfyui-info-prompt-toolkit pack. Install via ComfyUI Manager (search "Info-Prompt-Toolkit") or:

cd ComfyUI/custom_nodes
git clone https://github.com/kinorax/comfyui-info-prompt-toolkit.git
cd comfyui-info-prompt-toolkit
pip install -r requirements.txt

Restart ComfyUI after. No model files required.

The trap to avoid

Because stacks are metadata, a stack that references a LoRA file that isn't on disk will happily combine and store - and only fail later, at apply time. Keep your stack sources and your loras folder in sync, and remember that Use Loaded Model treats stack order and strength as part of the cache key, so reordering entries here isn't cosmetic: it produces a different (correctly) cache-missed run. If you only ever use one stack at a time, this node is dead weight - but the moment your workflow wants two composable LoRA sets, it's the cleanest junction in the pack.

CategoryInfo-Prompt-Toolkit/ImageInfo

Inputs (2)

NameTypeDefaultDescription
lora_stack1optIPT-LoraStackFirst lora stack
lora_stack2optIPT-LoraStackSecond lora stack

Outputs (1)

NameTypeDescription
lora_stackIPT-LoraStack