hswq_AnythingEverywhereTriplet
The three-input broadcast
- anything
- anything2
- anything3
Three inputs, no outputs, and the three things almost every graph needs shipped everywhere at once: the model, the clip, and the VAE off your checkpoint loader.
hswq_AnythingEverywhereTriplet is the "3" in the Use Everywhere family - the author's own explanation of the naming, from the release thread years back, is that it's "basically a three in one, mostly for model/clip/vae". Same idea as hswq_AnythingEverywhere, three times in one node so you're not stacking three separate broadcasters next to your loader.
It's filed under everywhere/deprecated and described as "Deprecated - should automatically be replaced", which sounds worse than it is. Nothing is broken. On load - or the instant you drop it from the menu - the frontend converts it to a plain hswq_AnythingEverywhere with three inputs, and from then on it's the ordinary broadcast node with three independent channels. The Python class sticks around so that older workflow JSON referencing the triplet class name still resolves instead of erroring out.
Why one node instead of three
Mechanically there's no difference: three inputs on one controller is the same as three controllers. The reason people reach for it is placement. Your loader sits at the top of the canvas; the model goes to the KSampler, the clip goes to both text encoders, the VAE goes to the VAE Decode at the bottom and to the tiled upscaler in the corner. Without broadcast nodes that's six wires drawn diagonally across everything you're trying to read. With one triplet node bolted to the loader, it's three short stubs and six inputs that fill themselves in at queue time.
Inputs and outputs
anything, anything2 and anything3 - all typed * (ANY), all optional. And that's the entire surface; there are no outputs, no widgets, nothing to connect on the right. The node contributes zero nodes to the graph and zero work to the server: its Python execute() returns an empty NodeOutput.
The real controls are in the right-click properties dialog, and if you're using the triplet you'll want them. Unrestricted, a MODEL broadcast goes to every unconnected model input in the graph, which is fine when you have one model and a trap when you're A/B-ing two. Restrict by node title or input-name regex there, and note that two broadcasters matching the same input at equal priority produce an ambiguity warning rather than a coin flip.
A quirk worth knowing: if you connect two different types to the triplet, each becomes its own broadcast and matches independently - which is exactly what you want here. If you connect two inputs of the same type, the matching falls back to comparing input names against target names (exact match by default), so a second MODEL only goes where the names line up.
How the wiring happens
Nothing about these nodes is in the workflow file. The extension intercepts graphToPrompt, works out which of your unconnected inputs each broadcast satisfies, creates real links just long enough to serialise the prompt, then removes them again. Your saved graph stays wire-free; the graph the server executes doesn't.
That's the useful half and the dangerous half. Send your workflow to someone without the pack and their samplers just look disconnected - no error, no explanation.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/ussoewwin/ComfyUI-NunchakuFluxLoraStacker.git
cd ComfyUI-NunchakuFluxLoraStacker
pip install -r requirements.txt
Restart ComfyUI, look under everywhere/deprecated. The hswq_ prefix on the class name is deliberate - it keeps this fork from colliding with chrisgoringe's original cg-use-everywhere, whose class types are unprefixed. Don't run both at once; two packs broadcasting MODEL is a free ticket to unresolvable ambiguities.
The weird install tax: requirements.txt installs nunchaku, the Florence-2 stack and the TensorRT-RTX CCSR stack, none of which this node touches. But the pack imports every submodule at startup, so a partial install can mean the whole pack - including these free utility nodes - fails to appear. nunchaku itself is gated (no nunchaku, no FLUX LoRA nodes, everything else loads).
When it doesn't work
Symptom one: the model reaches the sampler but the clip doesn't. That's usually a real wire somewhere already occupying one of the inputs - broadcast never overrides an existing connection - or a stale conversion where the third input got trimmed. Symptom two: a queue failure that reads like Required input is missing: clip. That's the pack-level failure mode on newer frontends, where the UE links get skipped and the server never sees them; update the pack rather than rewiring.
Symptom three, and the most common: you got the triplet into a big graph and it started binding to inputs you didn't intend. Open the properties editor and constrain it. Unrestricted broadcast scales badly; a title regex is two seconds of work and saves an afternoon of wondering why two different samplers share a VAE.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| anythingopt | * | — | |
| anything2opt | * | — | |
| anything3opt | * | — |
Outputs (0)
No outputs