🎛️ 万能禁用/忽略多框 Magic Multi-Group Switch
Mute or bypass whole node groups from one panel — the workflow debugger
The slowest part of debugging a ComfyUI workflow is the clicking. You want to test whether your ControlNet branch is the problem, so you right-click, bypass, run, undo, run again - and if you have six groups, that's a whole choreography. Magic Universal Switch is the command center for that: one node that shows every node group on your canvas and lets you mute or bypass whole groups at once, from a single panel.
The pitch is in the name - 万能禁用/忽略多框, the "universal disable/ignore multi-box." It's a workflow controller, not a data node: it has no inputs, no outputs, and it does nothing on its own. Its job is purely to reach into the graph and flip node states, which is exactly why it's marked as an output node that runs even though it returns nothing.
What the two modes mean
- 🔇 禁用模式 (Mute) - mutes groups. Muting is the "keep the node in the graph but don't run it" state.
- 🙈 忽略模式 (Bypass) - bypasses groups. Bypass feeds inputs straight through to outputs, which is the standard way to remove a node's effect without deleting the wiring.
The max_active input (1–99) is the interesting control: it caps how many groups can be active at once. So you can set "only one style branch may be on at a time" and the node enforces it for you - you pick a branch, it disables the others. That turns the debugging habit into a property of the workflow rather than something you remember to do.
How it actually works
Under the hood this is a front-end-driven node. It reads your node groups, and the property panel offers click-to-refresh (updated in V1.1.6) or a real-time group-update option so the group list stays current while you edit the canvas. Group pinning - the ability to fix a group's position - auto-saves and persists across reopening the workflow, which the changelog added because re-pinning groups after every reload was a slow, dumb tax.
The node's own function is a deliberate no-op (do_nothing); all the real work happens through the ComfyUI API that the pack's web code drives. That's worth knowing because it explains the one gap: if you're looking at it in the node graph and wondering where the outputs are, you're not missing anything. It doesn't pass data; it mutates state.
Where people get burned
Because the mechanism is group-based, your workflow has to actually use ComfyUI node groups for this to have anything to manage. If you've never grouped your nodes, the panel will look empty - group your nodes first (select → group) and refresh.
Also remember the distinction between mute and bypass when you're debugging. If you mute a sampler, downstream nodes run on stale data; if you bypass it, data flows through as if it weren't there. They read as the same thing on the surface and behave differently where it counts. When the workflow does something unexpected after you've flipped groups around, that difference is the usual culprit - and the same logic the node-plumbing docs apply to bypassed nodes applies here.
One honest note: the max_active cap is a rule you set, not a safety system. It's great for enforcing "exactly one style branch live," but it's not going to fix a broken workflow by itself - it just makes the toggling manageable.
Installing
It's part of the Magic-Assistant pack:
cd ComfyUI/custom_nodes/
git clone https://github.com/shigjfg/ComfyUI-Magic-Assistant.git
cd ComfyUI-Magic-Assistant && pip install -r requirements.txt
Restart, find it under "✨ Magic Assistant". No models, no heavy deps - it's pure UI plumbing, so it runs on any setup. If you've been living with right-click-bypass choreography, this is the node that retires the ritual.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| control_mode | COMBO | 🔇 禁用模式 (Mute) | 2 options: 🔇 禁用模式 (Mute), 🙈 忽略模式 (Bypass) |
| max_active | INT | 11–99 | — |
Outputs (0)
No outputs