Nodes/ComfyUI_AceNodes/πŸ… Any Input To Any
ComfyUI Node

πŸ… Any Input To Any

The identity node that fixes ComfyUI's type strictness β€” nothing more

By hay86Β·Created 2 years agoΒ·Updated about a year agoΒ· 96
πŸ… Any Input To Any
  • any
  • *

ACE_AnyInputToAny takes any value and returns the exact same value. No processing, no conversion, no transformation. If you read that and thought "that's a node that does nothing," you're right - and it's still useful, because in ComfyUI, sometimes doing nothing on purpose is the whole job.

It's part of πŸ… Ace Nodes (hay86/ComfyUI_AceNodes), the usual one-author grab-bag. This node exists to solve a type-system quirk, so let's talk about the quirk.

What it's actually for

ComfyUI matches inputs to outputs by type, and it's strict about it. Sometimes that strictness bites in dumb ways: a node's output is typed * (any) but the socket you're feeding expects a specific type, or a wire carries a value whose declared type doesn't line up even though the actual data is fine. There's no clean "just let it through" primitive in core for every case.

This node is that primitive. The input is typed * and the output is typed *, so it acts as a type-agnostic bridge - you can use it to relabel a wire's apparent type, break a type mismatch, or insert a passthrough point in a chain so you can inspect or reroute values without the graph complaining. It's the ComfyUI equivalent of a straight-through pipe.

Honest talk about the limits: it does not convert anything. If a node demands IMAGE and you feed it a STRING, this node won't make that work - it just doesn't care about types, so the error moves from the wire-drawing stage to runtime. And some "fix the type" problems are better solved with a proper conversion node (text→number, etc.) rather than a blind passthrough. Use it as a bridge, not a converter.

The inputs

One input, any, one output, *. That's the whole surface. Set nothing, configure nothing.

Where it actually helps

Two patterns worth knowing:

  • Type mismatches from packs with sloppy type declarations. Some nodes declare * outputs that are really images or strings. When a downstream node won't accept the wire, routing through this node can satisfy ComfyUI's checker.
  • Graph organization. Inserting a named passthrough makes a chain more legible and gives you a natural tap point, though honestly a preview node often serves that role better.

Installing

ComfyUI Manager β†’ search ComfyUI_AceNodes, or:

cd ComfyUI/custom_nodes
git clone https://github.com/hay86/ComfyUI_AceNodes

Then restart. Installing the pack drags in its whole requirements.txt (transformers, rembg, insightface, soundfile, …) even though this node is pure Python.

Reality check: most people will never need this node, and that's fine. But when you hit the specific wall of "my wire's type won't connect and nothing I do fixes it," having this in the drawer beats hunting for a workaround at 2am. Keep the expectation low and the usefulness will surprise you exactly once.

CategoryAce Nodes

Inputs (1)

NameTypeDefaultDescription
any*β€”

Outputs (1)

NameTypeDescription
**β€”