ConditioningSetMask_motorway_edition
Mask-guided conditioning, riding the Motorway bus
- MOTORWAY 🚌💨
- MOTORWAY 🚌💨
ConditioningSetMask is the node that makes inpainting and region edits work: it takes a conditioning stream and a mask, and confines that conditioning to the masked area so the prompt only steers the part of the image you're actually regenerating. This _motorway_edition clone does the same thing with both inputs pulled from agilly1989's keyed motorway bag and the result written back into it.
If you've ever tried to inpaint and had the whole image drift instead of just the masked spot, this node is why. The mask says where, the conditioning says what, and ConditioningSetMask is the junction. The motorway version doesn't change any of that logic - it only changes the transport: conditioning and mask come out of the bag by key, and the mask-restricted result goes back in under CONDITIONING.
The fields
MOTORWAY 🚌💨- the bag, in and out.INPUT_conditioning_key(defaultconditioning) - the conditioning to confine.INPUT_mask_key(defaultmask) - the mask to confine it to. In a pipe workflow this usually means an upstream mask-generating node (SAM, segmentation, or a simple mask node) published its output undermask.strength- 0 to 10, default 1.0. How hard the conditioning bites inside the mask.set_cond_area- the enum that trips everyone up:defaultvsmask bounds.defaultconfines conditioning to the mask shape as given;mask boundscomputes the bounding box of the mask and uses that rectangular area instead. Which one you want depends on your mask - if the mask is loose or feathered,mask boundsbehaves more predictably.OUTPUT_CONDITIONING_key(defaultCONDITIONING) - where the result lands.
Single output, the motorway itself.
Install and the standing caveat
Install stays painless - pure Python, no pip requirements, no model files:
cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway
Restart ComfyUI, or install ComfyUI_agilly1989_motorway from ComfyUI Manager.
And the caveat, same as every node in this pack: single-author beta, README banner "BIG BROKEN WITH ASYNC WILL FIX WHEN I GET THE TIME/MOTIVATION," and the machine-generated clones are disabled in current releases - __init__.py no longer registers them. Fresh installs show MotorwayStart and the Motorway AxB ramps; whether this clone appears depends on your version. If it's missing, stock ConditioningSetMask plus two Motorway 0x1 ramps is the reliable equivalent. When you do see 'MotorwayClass' object has no attribute 'hash_', it's almost always the mask key: the mask node ran later than this node, or published under a different name. In pipe routing, ordering is implied by key writes - and if the writer never ran, the reader has no idea.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — | |
| INPUT_conditioning_key | STRING | conditioning | — |
| INPUT_mask_key | STRING | mask | — |
| strength | FLOAT | 1.000–10 | — |
| set_cond_area | COMBO | 2 options: default, mask bounds | |
| OUTPUT_CONDITIONING_key | STRING | CONDITIONING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — |