🎈MuterSwitcher
A value switch that can also mute the branch you're not using
- ON_TRUE
- on_true
- ON_FALSE
- on_false
- OUTPUT
- output
MuterSwitcher is the Swiss-army switch of LAOGOU-666's Comfyui_LG_Tools pack. It does two things at once: it's a plain boolean value switch - pass ON_TRUE or ON_FALSE through depending on the toggle - and on the frontend it can also mute or bypass the nodes connected to each input. Value routing and workflow control in one node, which is genuinely handy when you're wiring up A/B options in a bigger graph.
The name undersells the value-switch half. In the Python it's a straight if boolean: return ON_TRUE else: return ON_FALSE, so it's a dumb, reliable router for any type. The mute/bypass behavior comes from the frontend: right-click each input (ON_TRUE, ON_FALSE, and the lowercase aliases) and set it to mute or bypass, and flipping the boolean kills or revives that branch of the graph. It's the same "switch whole groups off without deleting them" trick that made rgthree's Fast Groups Muter famous, just scoped per-input.
The inputs that matter
boolean(BOOLEAN, default true) - the switch that decides which side passes through.ON_TRUE/on_true- value(s) routed when boolean is true.ON_FALSE/on_false- value(s) routed when boolean is false.
All four data inputs are the wildcard * type, so they accept images, latents, models, strings - anything. Outputs are OUTPUT and output, both *, mirroring the two matching inputs. Two output sockets exist because the node is designed to pass a pair (the code returns two values at once), so ON_TRUE/ON_FALSE go to OUTPUT and on_true/on_false go to output.
One honest difference from LazySwitch1way
This node is not lazy. Every input is evaluated before the switch runs, because ComfyUI has to know the values. If you want the unselected branch to skip execution entirely - the "don't even load that model" behavior - the pack's LazySwitch1way is the node for that. MuterSwitcher is the right tool when you want value routing plus mute/bypass control, not when you're trying to save compute on the dead branch.
Installing it
Part of Comfyui_LG_Tools:
cd ComfyUI/custom_nodes
git clone https://github.com/LAOGOU-666/Comfyui_LG_Tools.git
pip install -r requirements.txt
Or via ComfyUI Manager → "Comfyui_LG_Tools" → restart. It's under Add Node → 🎈LAOGOU → Switch.
Common issues
- "The unselected branch still runs." Expected - this isn't the lazy switch. If skipping execution matters, use LazySwitch1way.
- Mute/bypass controls missing. The per-input right-click menu is frontend work; on the Nodes 2.0 frontend, interactive custom nodes like this have a documented history of breaking. Legacy canvas is the workaround.
- Four inputs feels like overkill. The lowercase/uppercase pairs are a design quirk so the node can pass two values at once. You can leave one set unwired and it still works.
It's a solid little utility that earns its place in a graph the moment you're switching between two options and want the dead side actually silenced. Just remember which "switch" you grabbed - lazy vs. value-routing is the whole difference here.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| boolean | BOOLEAN | true | — |
| ON_TRUEopt | * | — | |
| on_trueopt | * | — | |
| ON_FALSEopt | * | — | |
| on_falseopt | * | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| OUTPUT | * | — |
| output | * | — |