Bridge Input (BOOLEAN)
Bridge Input (BOOLEAN)
- value
Some things in a workflow aren't quantities, they're yes/no. Enable the detailer pass. Apply the upscale. Use the LoRA or don't. Bridge Input (BOOLEAN) is the ComfyBridgeIO socket for exactly that - a named on/off that an AI agent or script flips from outside, instead of you burrowing into the JSON every time.
The mechanism is the pack standard: the node carries a name, you save the workflow as API format JSON, and the bundled Python client patches the value at runtime - bridge.run("workflow.json", inputs={"upscale": True}). Client deep-copies the workflow (original untouched), posts to ComfyUI's /prompt, waits on the websocket, collects results. The node itself is a passthrough; it just marks where the boolean enters.
The inputs and output that matter
- name (STRING, default
"input_name") - the identifier yourinputsdict key must match exactly.upscalein the widget,{"upscale": True}in Python. Miss it and the client raisesBridgeInput 'x' not found in workflow. - value (BOOLEAN, default
False) - the workflow's default. Set it to whatever the graph should do when run by hand, because that's what runs when nobody injects a value. And yes, the default isFalse- if you forget to set it and rely on the widget, the switch starts off. - value_link (optional BOOLEAN socket) - a fixed boolean from another node. It wins over both the widget and anything the agent sends, so treat it as "hard-wired on/off."
Output is a single value (BOOLEAN) socket. In practice you'll feed it into a switch, a node that has a boolean toggle input, or a conditioning/modifier that accepts a flag.
Install
ComfyUI Manager → search ComfyBridgeIO → Install, then restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/cbpark84/ComfyBridgeIO
Restart and it's live. No models, no heavy deps. The optional Python client (pip install -e in the repo) wants aiohttp, websockets, Pillow. And the pack's README has a stale clone URL (nicekate/ComfyBridgeIO) - the real repo is cbpark84, as written above.
Common issues
Two things bite. First, the default-False widget: a bare Bridge Input (BOOLEAN) with nothing injected is off, which may not be what you meant when you built the template. Set the widget explicitly. Second, the client casts with Python's bool() - send "false" as a string and bool("false") is True, because any non-empty string is truthy. Pass real booleans from the agent, not strings.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| name | STRING | input_name | — |
| value | BOOLEAN | false | — |
| value_linkopt | BOOLEAN | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| value | BOOLEAN | — |