CLIPTextEncodeControlnet_motorway_edition
Prompt encoding on top of an existing condition
- MOTORWAY 🚌💨
- MOTORWAY 🚌💨
Most of the time you encode text into brand-new conditioning and hand it to the sampler. CLIPTextEncodeControlnet is the less common case: it takes existing conditioning - the kind that already has a ControlNet applied to it - and encodes your text on top of it, producing a combined condition. This is the Motorway-ed clone, so instead of wiring clip and conditioning in by hand, both come out of the Motorway by key, your prompt is a plain multiline box, and the result goes back in under a key you name.
A note on expectations: this node sits under _for_testing/conditioning in core ComfyUI, and it's genuinely niche. The everyday way to combine text and ControlNet is to build conditioning with a normal CLIPTextEncode, then apply a ControlNet to it - you don't need this node for that. Where it shows up is when a ControlNet is already baked into the conditioning stream and you want to layer prompt text onto that specific branch. If you inherited such a workflow, you now know what the node is doing; if you didn't, you can likely skip it and keep using the straightforward path.
How it works
The wrapper pulls two things out of the Motorway and writes one back:
INPUT_clip_key- key for the CLIP to encode with (defaultclip)INPUT_conditioning_key- key for the existing, ControlNet-affected conditioning (defaultconditioning)text- your prompt, a multiline field.OUTPUT_CONDITIONING_key- where the combined conditioning goes (defaultCONDITIONING)
Under the hood it instantiates the real core CLIPTextEncodeControlnet, encodes your text and merges it with the pulled conditioning, then stores the result under the output key. The only visible output is the MOTORWAY 🚌💨; the sampler downstream reads the CONDITIONING key.
The relationship between the two inputs is the whole reason this node exists: the ControlNet does the spatial steering, your prompt does the semantic content. If the ControlNet and the text disagree - the condition says "standing pose" while the prompt says "running" - the tension shows up in the output. Get them pointing the same direction and the two reinforce each other.
Motorway specifics
MOTORWAY 🚌💨 is required. The defaults assume your chain stored the CLIP under clip and the ControlNet-conditioned stream under conditioning; if your keys differ, update the fields - a key that was never written throws the signature 'MotorwayClass' object has no attribute 'hash_' error, which just means you asked for something nobody has put in the Motorway yet. Keys overwrite as they flow down the chain, so don't clobber a source conditioning you still need.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway
Restart, or find "ComfyUI_agilly1989_motorway" in ComfyUI Manager. No pip dependencies, no model downloads.
Fine print
This is an explicitly-beta pack - the README opens with "BIG BROKEN WITH ASYNC WILL FIX WHEN I GET THE TIME/MOTIVATION" - and the current hotfix release has the _motorway_edition clone generation commented out of __init__.py, so on the newest main these nodes may not load at all. On top of the pack's beta status, this wraps an experimental core node, so temper expectations. GitHub issues are the channel; the author has said his Discord DMs get ignored.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — | |
| INPUT_clip_key | STRING | clip | — |
| INPUT_conditioning_key | STRING | conditioning | — |
| text | STRING | — | |
| OUTPUT_CONDITIONING_key | STRING | CONDITIONING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — |