Luts Styler
The name is a lie, it's just color words
- text_positive
- text_negative
Let's clear this up first, because the name will mislead you: LutsStyler does not apply a LUT. A LUT - a color lookup table - is a post-processing operation that remaps the colors of a finished image. This node does none of that. It's a prompt styler. The "LUTs" here are ~101 named color-grade words - Cinematic, Sepia, Vibrant, Filmic, Retro - that it pastes into your text prompt so the model tries to generate an image that already looks graded.
Whether that's what you want depends on why you came. If you were hunting a node to slap a .cube file onto your render, this isn't it - go find an actual image-processing node that outputs an IMAGE. If you just want your generations to lean cinematic or warm or muted from the prompt side, LutsStyler is a tidy menu for exactly that.
How it works
MileHighStyler is a maximalist fork of the classic SDXL Prompt Styler. Every menu entry is a JSON template with a {prompt} slot; LutsStyler drops your text_positive into the chosen grade's template and wraps the grade phrasing at a strong default weight (~2.0 per the pack docs). The output is text - it flows into your CLIP Text Encode like any other prompt. No pixels are harmed.
The inputs and outputs that matter
- LUTs - the ~101-entry dropdown of color-grade names.
noneis the off switch. - text_positive - your subject; it lands in the template.
- text_negative - optional negative text.
log_prompt echoes the finished prompt to the console so you can see what the grade actually added. The two outputs are text_positive and text_negative - both STRING, note, not IMAGE - wired into a CLIP Text Encode.
Installing it
ComfyUI Manager: search ComfyUI_MileHighStyler, install, restart. Or:
cd ComfyUI/custom_nodes && git clone https://github.com/TripleHeadedMonkey/ComfyUI_MileHighStyler
then restart. No model files, no requirements.txt, no dependencies to fight - it's Python and JSON. Nodes land under ali1234/stylers.
Where people get burned
- Expecting an actual LUT. Said it up top, saying it again because it's the whole trap: this changes your prompt, not your image's colors. There's no
.cubeupload, no color pipeline, no IMAGE output. If you need real grading, do it as a post step with a proper node. - A prompt grade is a suggestion, not a filter. "Cinematic" nudges the model; it won't clamp the palette the way a real LUT would. Results vary by checkpoint and seed. If you need exact, repeatable color, prompt words are the wrong lever.
- Model era. The
2.0weighting is CLIP-encoder syntax - discarded on the 2026 LLM-encoded models (Flux 2, Z-Image, Qwen), where the parentheses become literal characters. Use this on the SDXL family and SD1.5; on newer models, just write "cinematic color grade" in plain words. - Stacking grades fights itself. Chaining
WarmintoCoolToneintoMutedaverages to mud. Pick one grade, judge it, then decide.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| text_positive | STRING | — | |
| text_negative | STRING | — | |
| LUTs | COMBO | 101 options: none, Cinematic, Sepia, Monochrome, Vibrant, CoolTone, +95 | |
| log_prompt | BOOLEAN | true | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| text_positive | STRING | — |
| text_negative | STRING | — |