Clip and Text -> Encode
The wire-in version of CLIPTextEncode
- clip
- CONDITIONING
Ever wished the built-in CLIPTextEncode node had its text box ripped out and replaced by a wire? That's this node. Clip and Text -> Encode takes a text STRING from another node plus a CLIP model and hands back CONDITIONING - exactly what a KSampler wants. The tooltip on the clip input says it plainly: "The CLIP model used for encoding the text."
It's a re-export of ComfyUI's own text-encode path: tokenize the text, encode it into conditioning. Nothing exotic under the hood - no new sampling math, no special scheduling. The point of this node is that prompt text built by other nodes has a clean way to become conditioning. That's the gap it fills in the Prompt Worker pack, and it's how the pack's Flux GGUF example workflow encodes its prompt after a DualCLIPLoaderGGUF.
The one thing that matters: text is forceInput
That single detail is the whole reason this node exists. Because text has forceInput set, you can't type into it - the text has to arrive on a wire. If your prompt is sitting in a text box you want to encode, the core CLIPTextEncode already does that and this node adds nothing. But when your prompt is assembled from dropdowns and merges and then cleaned, you can't wire that into the core node's widget. This node is that wire.
Inputs and outputs
- text (STRING) - your assembled prompt, from a Constructor, Worker, Merger, translation node, anywhere
- clip (CLIP) - from your checkpoint or CLIP loader; the same clip you'd give CLIPTextEncode
- CONDITIONING out - wire to the positive or negative input of a sampler, or into ConditioningCombine, ConditioningSetArea, whatever your workflow chains
Gotchas
If the clip arrives as None - say your checkpoint has no usable text encoder - the node raises a loud error about an invalid clip input instead of failing silently. That error is about your loader, not this node; check what your checkpoint actually ships.
And one caveat that applies to every encode node, not just this one: on LLM-encoded models (Flux 2 Klein, Z-Image, Anima) the old CLIP weight syntax like (word:1.3) is ignored or passed through as literal punctuation. Feed this node cleaned, weight-free text - which the rest of this pack is literally built to produce.
Install
Part of the Prompt Worker pack:
cd ComfyUI/custom_nodes
git clone https://github.com/lenskikh/ComfyUI-Prompt-Worker
Restart ComfyUI. No extra Python dependencies - it imports comfy.comfy_types, which ships with ComfyUI itself. (Or install via ComfyUI Manager; the registry title is misspelled "Propmt Worker", so search both spellings.)
If you already run the stock CLIPTextEncode and never build prompts from other nodes, you don't need this one. If you're using this pack, it's the natural end of the line - everything funnels into it before the sampler.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| clip | CLIP | The CLIP model used for encoding the text. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |