CLIP To Any π½
Cast a CLIP model to ANY without touching a single weight
- CLIP
- any
A CLIP is a loaded text encoder - a real object, not a number or string. Normally you'd never want to pass one into a generic ANY socket, but ComfyUI's strict type checking occasionally demands exactly that. This node takes a CLIP input and passes it through untouched, re-labeled as * (any). The value you get out is the same CLIP model you put in.
It's one of the auto-generated converter nodes in the ComfyUI Telegram Suite pack. The pack ships a whole row of these (INT, FLOAT, STRING, DICT, MODEL, CLIP, VAE, IMAGE, AUDIO, LATENT), all built by the same script, all doing the same one job: crossing the type boundary.
Why it exists
The pack's trigger inputs/outputs - the mechanism it uses to enforce execution order - accept any type. In early versions you had to cast a signal to ANY before feeding a trigger, and back again afterward. That's why the converters exist, and why the README jokes about the category being so full.
Here's the thing though: since version 1.0.4 you don't need to convert for triggers anymore - typed signals feed straight in. The changelog keeps these nodes around for backward compatibility, which means for a brand-new workflow they're mostly dead weight. The remaining real use is a third-party node with a genuine * input that won't accept your typed output directly.
How it works
A pure pass-through:
def convert(self, CLIP):
return (CLIP,)
No memory cost, no re-encoding, no copying of weights. The CLIP input is a forceInput socket (you wire in a CLIP Loader or CLIP encode source), and the output is any. Exactly the same object, different type label.
Inputs and outputs
CLIP(required) - the text encoder to pass through.any(output, type*) - the same CLIP, typed as any.
Installation
Pack-wide:
cd ComfyUI/custom_nodes
git clone https://github.com/SwissCore92/comfyui-telegram-suite.git
cd comfyui-telegram-suite
pip install -r requirements.txt
or install "ComfyUI Telegram Suite" via ComfyUI Manager and restart.
Notes
If a workflow from before the 1.0.4 update loads and still has these converter nodes in the trigger chain, leave them - they still work, they're just redundant now. If you're wiring something fresh, try feeding your CLIP straight into the wildcard input first. Add the cast only if the socket actually rejects it.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| CLIP | CLIP | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| any | * | β |