Nodes/ComfyUI-Wireless/Set Wireless (Image)
ComfyUI Node

Set Wireless (Image)

Send an image across the canvas with no wire in sight

By errew·Created 7 months ago·Updated 7 months ago· 2
Set Wireless (Image)
  • image
  • image
keyimg_var

The blue-port version of the pack's Set nodes. Set Wireless (Image) takes an IMAGE on its input, stashes it in ComfyUI-Wireless's in-process global dictionary under a key you name, and hands the image straight through on its output. Later - anywhere on the canvas - a Get Wireless (Image) with the same key pulls that exact image back out, no connection drawn between them.

You reach for this in the same situations that make you reach for the Any variant, minus the "everything" flexibility: an image that has to travel from a sampler on one side of a big workflow to a save node or a face-detail pass on the other, where routing a wire would mean crossing half the graph. The pack deliberately ships separate Image and Latent nodes instead of one universal grab-bag, and the reason is ComfyUI's port-color system: a dedicated IMAGE node gets a blue output that slots into image inputs with full visual type-matching, so you can't accidentally feed a latent where an image belongs.

As with every node in this pack, the "wireless" part is a friendly lie: it's a module-level Python dict, same process, no API, no serialization. That's also the honest tradeoff to keep in mind - hidden links are easier to read until something breaks, and then you're reading error messages instead of following a wire. The community's consensus on the broader "anything anywhere" style of nodes is firmly "only if you document it"; the typed variants like this one are the safer middle ground.

How it works

GlobalStore.set(key, image) writes into the pack's _GLOBAL_CONTEXT dict after trimming whitespace from the key, and the node returns the image unchanged - a pass-through so your linear chain isn't interrupted. Note that no copy is made: the Get node will hand back the same tensor object, which is why the pack's "zero latency" claim holds up and also why you shouldn't mutate the returned tensor expecting the original to stay pristine.

The node is marked as an output node, so it always runs when its inputs are ready - and that pass-through output is your lever for controlling execution order (a Set with a dangling output gives ComfyUI nothing to order the Get after).

Inputs and outputs

  • key - the string name of the channel (default img_var). Must match the Get node's key exactly, aside from leading/trailing spaces, which are auto-trimmed. Case-sensitive.
  • image - an IMAGE tensor, e.g. from a VAE Decode or Load Image.

Output: image (IMAGE) - the same image, passed through. Feed it onward to keep the chain, or leave it dangling if you only care about the wireless hop.

Installation

Same as the rest of the pack - ComfyUI Manager, search "ComfyUI-Wireless", or:

cd ComfyUI/custom_nodes/
git clone https://github.com/errew/ComfyUI-Wireless.git

Restart ComfyUI. Zero dependencies beyond the standard library, no model downloads.

Where people get burned

  • Ordering. Get must execute after Set, and nothing forces it except the pass-through wire. If you get a "Key not found" error, feed Set's output into a downstream node.
  • Bypassed Set, stale image. Bypass or mute this node and Get silently returns the last image from a previous run instead of erroring. If your output looks "old," this is why.
  • Type mismatch via the Any variant. If another node stored a latent under your img_var key, this Image Get will hand it over and the consumer will blow up at runtime. Keep keys unique across the whole session.
CategoryWireless

Inputs (2)

NameTypeDefaultDescription
keySTRINGimg_var
imageIMAGE

Outputs (1)

NameTypeDescription
imageIMAGE