Why? • Nodes • Gallery • Requirements • Installation • Getting Started • Workflows • Wiki
Colorcraft is a set of modular nodes that chain together, letting you build your own custom color-editing pipeline out of modifiers, schedules, and masks. Mix and match exactly what your shot needs.
Between the axes and masks on offer, it's close to the full toolset of something like Lightroom or Camera Raw... applied somewhere those guys could never reach: mid-generation, in latent space.
Exposure, Contrast, Tone Mapping, Saturation et al., White Balance/Tint, Hue Shifting, Split-toning/Cross-processing, and Range Masking, all done without LoRAs, prompt hijinks, CFG boost, post-processing effects, etc., just using pure vector math on the latent.
And since it's just simple vector math, it's computationally close to free!
Most color tools work on finished images after the fact: a curve, a LUT, a filter laid over pixels that are already locked in. Colorcraft reaches into the latent while the image is still being formed, and shapes color the same way the model itself does, along real, meaningful axes of the space it thinks in, rather than the red/green/blue channels of a decoded image.
It's the difference between metering a shot correctly at capture versus fixing the exposure in post, or mixing the right color on the palette versus color-correcting a finished painting. Latents carry far more dynamic range than a decoded image, so there's real headroom to work with: proper HDR-range color, not a clipped approximation of it.
High Dynamic Range: middle is the original — note the lamps and the shutters (Click to view full size)
Steering: top-left is the original, the rest use same prompt/seed with different edits applied at early steps (Click to view full size)
- Sampler — the actual workhorse. All modifiers with their schedules and masks chain together and end up here
- Schedule — build one schedule and share it across several modifiers, or use one per modifier
- Basic — contrast and color shift, works on any model
- Advanced — the full toolkit in one mega-node
- Luma — exposure, tone compression
- Chroma — temperature, tint, vibrance, saturation, chroma contrast
- Chroma Plus — more hue axes, for when temperature/tint isn't enough
- Punch — contrast, clarity, sharpness
- Shift — push/pull colors towards a specifically defined color
- Masking — key any edit by luminance, hue, and more
- Mask Blur — blur masks and control the spread (grow/shrink)
- Combine Masks — build up complex, compound masks from simple ones
- Mask Preview — tiny helper node for visualizing masks
Before/after comparisons coming soon.
- ComfyUI
- Basic node should work with any model that has a VAE, no restrictions
- Every other node needs a matching basis for the model's VAE family. Currently supported:
- Qwen Image VAE Family — Krea2 / Qwen Image / Anima / ...
- Flux AE Family — Z-Image / Flux / ...
Note
I have only tested on Krea2 and Z-Image. So, feedback would be much appreciated on how it fares with Anima, Qwen Image, etc.
Important
The nodes are designed for the classic ComfyUI UI. Nodes 2.0 is not supported until there's at least some dev docs for it.
Via ComfyUI Manager:
Open Manager → Install via Git URL → paste https://github.com/muerrilla/ComfyUI-Colorcraft → Confirm.
Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/muerrilla/ComfyUI-Colorcraft.git
Restart ComfyUI and refresh your browser. The nodes appear under Muerrilla → Colorcraft in the node menu.
- Drop in the
Colorcraft Samplernode, provide the required VAE and sampler (KSamplerSelect), and plug it into aSamplerCustomnode. - Build out from there: chain together the modifiers you want and feed them into
Colorcraft Sampler.
(e.g.Colorcraft Lumafor exposure →Colorcraft Punchfor contrast →Colorcraft Sampler) - Every modifier node (excl.
Colorcraft BasicandColorcraft Advanced) requires aColorcraft Scheduleinput. - Every modifier node (excl.
Colorcraft Basic) can take an optional mask through themaskinginput.
Tip
Timing is key: Every adjustment rides its own schedule across the sampling steps. Early steps steers the generation; later steps behave like straightforward color correction, faithful to what was already forming.
Tip
Adjustment can be gated by a mask: These are not hand-painted masks, but live reads of the image's own luminance, hue, etc., So besides things like adjusting only shadows or highlights, you can target "the warm highlights" or "everything except skin tones" using combined masks.
Important
Be gentle, or give the model time to heal: If your edits are too strong, they will eventually break the latent and create artifacts. In those cases you'd better spread the edit across multiple steps and/or avoid applying the edit on the last few steps, giving the model some time to recover. In general, try to avoid applying an edit on the very last step (unless it is very mild).
A handful of annotated example workflows are included in workflows/ folder. Drop any of them straight into ComfyUI to get oriented. A wider set covering the more advanced adjustments and masking/scheduling tricks is coming shortly.
![]() Getting Started |
![]() Luma |
![]() Chroma |
![]() Punch |
![]() Chroma Plus |
![]() Shift |
![]() Advanced |
![]() Advanced Masking |
![]() Mask Preview |
Note
Provided workflows are all based on Krea2. Change the Diffusion Model, CLIP, and VAE to make them work with Z-Image or any other model that uses either Qwen Image VAE or Flux AE.
You might have to re-adjust the modifier sliders to get the same adjustment intensities for different models.
The full wiki (per-node parameter reference, deeper technique breakdowns) is coming soon.
The sigma-to-step handling is adapted from Jonseed's ComfyUI port of Detail Daemon: https://github.com/Jonseed/ComfyUI-Detail-Daemon









