Any Lazy Adapter
Same Type Bypass, But It Doesn't Run Until You Actually Need It
- value
- VALUE
Any Lazy Adapter is Any Adapter's lazier sibling, and "lazy" here is a real technical word, not a joke about the author. Both nodes exist to do one thing: let you connect two sockets ComfyUI's type checker refuses to join, by passing any input through as a * wildcard output. The difference is when the upstream work happens.
Regular Any Adapter requests its value input the moment the graph executes it. Any Lazy Adapter marks that input as lazy, which in ComfyUI means the node holds off on fetching it until a downstream node actually asks for it. Nothing asks, nothing runs - the upstream branch never executes and you've saved whatever compute it would have burned.
When the laziness actually pays
The value is a big object you might not need. Say you've got a workflow that conditionally uses an image or a latent depending on which branch the graph takes - with a normal adapter, that expensive generation upstream fires regardless. With the lazy variant, if the destination node never requests the value, the whole upstream chain sits idle. That's the same lazy-evaluation mechanism ComfyUI uses for nodes that "wait for an input to be ready," and it's genuinely useful in big branching graphs where you don't want every possible path computed every run.
There's a flip side worth knowing before you reach for it. Because execution only happens on request, you're relying on the downstream node to actually pull the value at the right time. If you wire this into a node that doesn't properly request lazy inputs, you can get a None where you expected data, and the graph gives you no hint why. When in doubt, use the plain Any Adapter. Prefer the lazy one when the upstream cost is real and the downstream demand is uncertain - which is exactly the conditional-logic case it was built for.
Inputs and outputs, the whole list
value- optional, any type, lazy. The thing you want to pass through.VALUE- the output, any type. The same value, connected to whatever socket needs it.
Same caveat as its sibling: this bypasses type validation, not reality. The node does no conversion, so whatever you shove through still has to make sense to the node on the other end, or you'll trade a red wire for a runtime error. Keep it for bridging one stubborn connection, not for re-architecting your whole graph on untyped wires - type erasure costs you legibility, and there's a well-earned community skepticism about building entire workflows on it.
Install
It's part of comfyui-sg-nodes by sebagallo. ComfyUI Manager → search comfyui-sg-nodes → install, or:
cd ComfyUI/custom_nodes
git clone https://github.com/sebagallo/comfyui-sg-nodes
Restart ComfyUI and it'll be under SGNodes/Utilities with the rest of the pack. No models to download, no extra dependencies.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| valueopt | * | Connect any node output here (optional, lazy). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| VALUE | * | — |