Bridge Input (SEED)
Seed control with a fixed/increment/random mode — read the fine print
- seed
Seed is the one integer every ComfyUI workflow cares about, and ComfyBridgeIO gives it its own node. Bridge Input (SEED) looks like a friendlier Bridge Input (INT) with a mode dropdown - fixed, increment, random - and it's the one node in this pack where the docs and the shipped code don't quite line up, so let's talk about what actually happens.
The node takes three inputs, all required: name (STRING, default "seed"), mode (dropdown: fixed / increment / random, default fixed), and value (INT, default 0, min 0, max 2^31−1). Output is a single seed (INT) socket, which you'd normally wire to the KSampler's seed input. So far, so familiar.
Here's the fine print. The node's get_seed() method just returns value - the mode logic isn't implemented in the node itself; the design intends the client to manage mode and value (the README's framing: "클라이언트가 mode와 value를 관리"). But the client as shipped doesn't actually implement increment/random either - patch_inputs treats SEED like any non-primitive and just writes whatever integer you pass in. Which means: as of this version, mode is aspirational. The dropdown stores its choice in the workflow JSON, and the client will faithfully hand you random if you keep it, but the randomness has to come from whatever is driving the client (you roll the seed and pass it in). If that sounds like "it's an INT bridge with extra steps," you're not wrong - but the node is where the author clearly intends richer seed behavior to land, and the wiring is already there for it.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/cbpark84/ComfyBridgeIO
Restart ComfyUI, or ComfyUI Manager → search ComfyBridgeIO → Install. No models, no heavy deps. Python client optional (pip install -e in the repo; aiohttp, websockets, Pillow). The README's clone URL says nicekate/ComfyBridgeIO - stale; use cbpark84 as above.
Common issues
The real-world burn: someone sets mode to random, expects a fresh seed every run, and gets the same image every time, because the node just passes the widget's value. Don't trust the mode widget yet - drive the seed from the client side (inputs={"seed": random.randint(...)}), or set mode to fixed and change the value explicitly. Watch the range too: the widget caps at 2^31−1, and KSampler seeds in that ballpark are fine, but the node won't stop a client from handing it a bigger number that some samplers treat oddly.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| name | STRING | seed | — |
| mode | COMBO | fixed | 3 options: fixed, increment, random |
| value | INT | 00–2147483647 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| seed | INT | — |