abyz22_bypass
A mute switch that rolls dice for you
- value
- value
Every ComfyUI user ends up toggling branches off and on while testing - "does this workflow look better with the detailer in or out?" abyz22_bypass is that toggle, except it can flip itself. It sits in your graph, watches what's downstream, and can randomly mute or bypass that whole branch with a probability you set. Run a batch and every frame gets a coin flip on whether the branch runs. That's genuinely useful for A/B testing a refinement pass without babysitting the workflow.
The node comes from abyz22/image_control, a fork of ltdrdata's Impact Pack, and it leans on Impact machinery: the mute/bypass trick is implemented by messaging the frontend over Impact's impact-bridge-continue channel, so it needs the real Impact Pack around.
The three knobs
value- the thing you're passing through. It's wildcard-typed, so it'll carry any data you drop in, and it's returned unchanged. The node is really acting as a traffic cop, not a data transformer.mode- the master switch.Active(default) means always pass through, no coin flips. Set it toMute/Bypassto arm the randomness.behavior- what happens when it decides to interfere:Muteskips the downstream node,Bypassleaves it in the graph but disconnected, which behaves differently for nodes that need their inputs fresh each run.prob(0–1, default 0.5) - the probability, when armed, that the branch gets skipped. 0.5 is literally a coin flip; 0.1 is a rare skip.
How it works
At execution, the node walks the current workflow graph (it reads extra_pnginfo from the prompt data), finds every non-reroute node downstream of its output, and checks each one's mode. If mode is off and the coin comes up heads, it tells the frontend to mute or bypass those nodes before they run - which is why it's registered as an output node. The side effect is that it only does its thing when it can see the graph, so if you're executing via the API or from a saved workflow that strips extra_pnginfo, it degrades to a plain pass-through.
Install and gotchas
cd ComfyUI/custom_nodes
git clone https://github.com/abyz22/image_control
or ComfyUI Manager → "image_control", then restart. The pack installs openpyxl, pytorch-lightning, kornia; the slow part is pytorch-lightning.
Real-world caveats: because the interference is driven by a one-time frontend message, nodes that cache state can end up out of sync if you re-run a partial queue - re-queue the whole workflow when the coin-flip mode feels like it's ignoring you. And only mute (not bypass) is safe for nodes whose presence upstream matters for downstream type checks; bypassing a node that feeds a required input will just produce an error on the next run. If you just want deterministic on/off control, mode set to Mute/Bypass with prob at 1.0 is a fancy way of writing a normal bypass - the random flavor is the point.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| value | * | — | |
| mode | BOOLEAN | true | — |
| behavior | BOOLEAN | true | — |
| prob | FLOAT | 0.500–1 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| value | * | — |