Neons Style Explorer (Encode)
The Style Picker That Ends in CONDITIONING
- clip
- positive_conditioning
- negative_conditioning
- positive
- negative
- debug
If you already want the Neons style catalog in your graph, this variant deletes two nodes from it. Same node, same 3,015 entries, same panel - it just does the CLIP encode for you and hands out conditioning instead of text.
What's different from the plain one
It takes one extra required input, clip, and returns positive_conditioning and negative_conditioning alongside the positive, negative and debug strings. The mechanism is what you'd guess: it composes the prompt through the same composer the plain version uses, then encodes both strings with the CLIP object you gave it, so you wire straight into your KSampler and skip the CLIP Text Encode pair entirely.
That's all it is, and that's the argument for it. Four nodes become one, the wiring gets flatter, and the positive and negative string outputs are the exact text that got encoded. When you're generating workflows from a script or hitting the API, that's one node object instead of a subgraph.
The inputs you set
clip is the required one: feed it the same CLIP from your checkpoint loader that would have gone into your text-encode nodes. Wiring a CONDITIONING into it won't work - the socket is CLIP, which is why nothing connects if you're trying to feed an already-encoded prompt in.
Everything else is the standard set. prompt for your subject and scene, quality for the masterpiece, best quality prefix (kept at the very front of the composed text), negative for your avoid terms. style, style_2 and style_3 pick up to three catalog entries, joined in natural language by style_mix; custom_style holds your own written entries and sits empty until you create one. format and finish layer a picture format and a realism qualifier on top. output_format picks natural / danbooru / natural + danbooru, style_position puts the clause before or after your prompt, tag_separator only applies in the booru modes, and include_style_negative merges the style's own avoid terms into negative_conditioning.
style_weight is the emphasis slider - 1.0 is neutral, and above that the clause is wrapped as (clause:1.5) before encoding. Same caveat as the plain node, and it bites harder here because the emphasis is baked into what the encoder sees: on LLM-encoded models like Krea 2, Anima or Qwen-Image, attention weights are discarded, so that syntax arrives as literal punctuation. Keep the slider at 1.0 there and describe the look in words.
The dice and batch controls come along unchanged: style on the 🎲 Random entry, roll_scope for the pool, roll_seed with its control-after-generate widget, and crawl / crawl_missing_only / auto_gallery for the unattended preview run that walks the dropdown one entry per queued prompt.
Outputs
Two conditioning sockets - positive_conditioning to the KSampler's positive, negative_conditioning to the negative - plus three strings. The strings are the reason to keep this node visible rather than collapsing it into a group: positive and negative are the composed prompts, ready for a text display or a Save Text node when you want to log what a run actually sent. debug prints the chosen styles, the medium, the weight, whether crawl was on and both composed strings; wire it to Preview Text for your first afternoon and it'll explain most bad runs on its own.
One thing to know: negative_conditioning is a real encoded negative, not a blank one, because the style's avoid terms are merged in by default. If your workflow wants an empty negative, turn include_style_negative off and clear the negative box.
Install
Same pack, same steps. ComfyUI Manager → search Neons Style Explorer → install → restart ComfyUI. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Neon-Sparks/ComfyUI-NeonsStyleExplorer
Both land in the Neons category. Nothing else to install - it runs on the Pillow and numpy ComfyUI already ships, and Python 3.9+ is the only other requirement.
Where people get burned
Restart the server process after installing or updating, not just the browser tab. The node's controls and its catalog routes are registered at startup, so after an update you can watch the new widgets sit there doing nothing until the process comes back. If the panel itself is blank or the layout is scrambled, hard-refresh (Ctrl/Cmd+Shift+R); the front-end files are cached aggressively.
Then one judgement call. Where a model's official workflow routes text through a specialised encoder - the SDXL refiner's conditioning, or an encoder with extra fields like Flux's guidance embedding - the plain Neons Style Explorer plus your own encode node is the safer path, because this one assumes a normal CLIP encode. And don't expect it to speed anything up: it encodes on every run, which is free at this size, but it isn't a cache.
Inputs (21)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| prompt | STRING | Your subject and scene. | |
| quality | STRING | Quality prefix, kept at the very front of the prompt (e.g. masterpiece, best quality, highres). | |
| negative | STRING | Your avoid terms. Style negatives are merged in when enabled. | |
| style | COMBO | None | Main style. Pick the dice entry to roll a random style each run. |
| style_2 | COMBO | None | Optional second style. |
| style_3 | COMBO | None | Optional third style. |
| custom_style | COMBO | None | Your own styles only — anything you wrote in the editor. Composes as a fourth style slot. Empty until you create one; use Refresh Node Definitions after adding one. |
| style_mix | COMBO | blended with | How extra styles are joined in natural language. |
| format | COMBO | None | Optional picture format (sheet, cover, contact sheet, widescreen...). |
| finish | COMBO | None | Optional finish qualifier layered on top of the style. |
| output_format | COMBO | natural | natural = sentences. danbooru = booru tags. both = sentences plus a tag line. |
| style_position | COMBO | start | Put the style clause in front of your prompt or after it. |
| include_style_negative | BOOLEAN | true | Merge the style's own avoid terms into the negative output. |
| style_weight | FLOAT | 1.501–5 | How hard the style pushes. 1.0 = no emphasis. Wraps the style clause as (clause:weight) in natural mode and every style tag as (tag:weight) in booru modes. |
| tag_separator | COMBO | comma+space | Booru modes: how tags are joined. |
| crawl | BOOLEAN | false | Walk the main style dropdown one entry per queued run instead of rolling, so a batch fills the gallery in order. It starts from whatever style is selected, so park on the one you want to begin at. Turns the dice off on every slot while it is on; the set it walks is roll_scope (use 'missing preview' with auto_gallery to fill the gaps). |
| crawl_missing_only | BOOLEAN | false | While crawling, skip styles that already have a preview. The list is re-checked at every step, so entries drop out as their previews are made. Ignored when crawl is off. |
| roll_scope | COMBO | all | Which styles the dice may land on, and which set crawl walks: everything, the primary style's family, your favourites, recently used, or by preview state. |
| roll_seed | INT | 00–4294967295 | Seeds the dice. Use the control under it (randomize / increment) so every run rolls a different style; 0 also rolls freshly each run. |
| auto_gallery | COMBO | off | Save generated images to the style gallery automatically. |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| positive_conditioning | CONDITIONING | — |
| negative_conditioning | CONDITIONING | — |
| positive | STRING | — |
| negative | STRING | — |
| debug | STRING | — |