Nodes/ComfyUI-GU_Nodepack/GU Get Node Active
ComfyUI Node

GU Get Node Active

Is this node actually on?

By alexguryev·Created 4 months ago·Updated 23 days ago· 2
GU Get Node Active
  • any_i
  • is_active

Sometimes you don't want to run a branch - you want to ask whether it's live, and have the answer drive something else. GU Get Node Active turns a node's presence into a boolean you can wire into a switch, a text label, or a filename. It outputs the state of the upstream node: active or not.

That "active" is doing more work than it looks like. In ComfyUI, "is this node on?" is actually two different questions, and this node answers the one you can act on programmatically.

What it does

  • any_i - a wildcard (*) input, optional. Connect it to the output of the node you care about.
  • Output: is_active, a BOOLEAN.

The mechanism is refreshingly direct: the output is True if the connected upstream actually produced a value, False if it didn't. Because the input is optional and wildcard-typed, an unconnected input arrives as None - and None means "this branch isn't feeding me." Bypass (mute) a node and its output stops flowing; the boolean flips to False. Connect a live branch and you get True.

The node always executes when the Queue runs - again the IS_CHANGED NaN trick, so it re-checks every run instead of caching a stale "on/off." For a state probe, stale would be useless, so that's by design.

Why you'd reach for it

The cleanest use is gating. Wire is_active into a switch or a conditional filename component, and your graph reacts to whether a branch is live without you touching a widget. Concretely: you have an upscale branch you bypass sometimes - feed GU Get Node Active off it, and route the boolean into a name builder so your outputs say _up only when the branch actually ran. That's the same idea the GU pack's GU Image Label automates for ControlNet/DetailDaemon/Redux with its used_* toggles, except here you're reading reality instead of flipping a checkbox.

The thing to understand before using it

This reports whether the upstream delivered data, not whether the node is "enabled" in the UI sense of your own choosing. A node that runs and returns None/empty will read as inactive even though it executed. And because it depends on a live wire, it's most reliable as a branch-state probe: on a branch that's either fully connected or bypassed. Use it that way and it's rock solid; expect it to tell you the internal state of a node's widgets and you'll be disappointed. It's plumbing - one boolean out - and plumbing is exactly what it's for.

Install

ComfyUI Manager → Custom Nodes Manager → search "GU Nodepack" → Install → restart, or:

cd ComfyUI/custom_nodes
git clone https://github.com/alexguryev/ComfyUI-GU_Nodepack
cd ComfyUI-GU_Nodepack
pip install -r requirements.txt

Only Python deps (psutil, requests, gu-funclib>=1.9.0), no model downloads. Windows-tested, single-user design, everything else best-effort. One note for the paranoid: the pack ships a prestartup_script.py that hooks the websocket to refresh its LoRA lists on browser connect - it's benign (no new HTTP routes), but automated scanners flag it, and you should know that before installing anything.

CategoryGU_Nodepack

Inputs (1)

NameTypeDefaultDescription
any_iopt*

Outputs (1)

NameTypeDescription
is_activeBOOLEAN