Nodes/ComfyUI-Krea2-AnimeStyle/Krea2 Anime Style CLIP Text Encode
ComfyUI Node

Krea2 Anime Style CLIP Text Encode

This CLIP encoder speaks 152 Japanese art terms so you don't have to

By eastmoe·Created 2 months ago·Updated 2 months ago· 0
Krea2 Anime Style CLIP Text Encode
  • clip
  • positive
  • negative
positive_text
lora_trigger_text
negative_text
style_selection
translate_promptsfalse
translation_max_length1024
refine_promptfalse
refinement_max_length1024

The annoying thing about anime style prompting is that the vocabulary is Japanese and the models reward it. "Moe-kei proportions" or "thick-painting gouache finish" will do far more for you than "cute anime girl" ever will - if you can remember which of the 152 art terms maps to the look in your head. This node turns that whole glossary into a checkbox panel. Tick a box, it appends a proper English style sentence to your prompt, and you get back ready-to-sample conditioning. That's the entire pitch, and it's a good one.

What it actually does

Krea2AnimeStyleCLIPTextEncode sits exactly where the stock CLIPTextEncode would: it takes a clip input and produces positive and negative CONDITIONING outputs for your sampler. Under the hood it's refreshingly simple. The pack ships a data/styles.json with 152 anime illustration styles, each carrying an English prompt snippet plus its kanji, romaji, and one of 8 categories - character design, line art, coloring, lighting, color palette, texture, medium context, and mood. Check a box and that style's English description gets comma-appended to your positive prompt before encoding. The selection is actually stored as plain text style IDs, so saved workflows round-trip perfectly even though the frontend renders it as checkboxes.

The inputs that matter:

  • positive_text and negative_text - your prompts. Nothing special, and they support ComfyUI dynamic prompts (wildcards) if that's your thing.
  • style_selection - the checkbox panel. It also accepts manual comma/newline-separated style IDs (or zh/ja/romaji aliases) as plain text, which is your only option when running headless or via API.
  • lora_trigger_text - this is the input unique to this node, and it's a thoughtful one. LoRA triggers need to appear verbatim at the front of the prompt and must not be "improved" by anything. This text gets prefixed to the final positive prompt untouched - no translation, no refinement.

Then there's the translate_prompts and refine_prompt pair, each with a max-length cap (default and ceiling both 1024). Translation sends your prompts to English before encoding; refinement makes an LLM expand and polish the positive prompt. Here's the catch: both call clip.generate() and clip.decode() under the hood, and a normal SD 1.5 / SDXL / Flux CLIP doesn't expose those. You get a RuntimeError - "Use a text-generation capable CLIP model, or turn translate_prompts/refine_prompt off." The intended CLIP-LLM is the kind of LLM text encoder modern models ship with - the Qwen3-VL encoder that Krea 2 uses is exactly that shape, which is presumably why the pack is named Krea2 even though the basic path works with any CLIP.

Installing it

cd ComfyUI/custom_nodes
git clone https://github.com/eastmoe/ComfyUI-Krea2-AnimeStyle

Then restart ComfyUI. Or skip all that and use ComfyUI Manager - search "ComfyUI-Krea2-AnimeStyle". Either way there's no requirements.txt, no model downloads, and no heavy dependency hiding anywhere: the style data is bundled in the repo and the only runtime library is aiohttp, which ComfyUI already ships. It appears under eastmoe -> Comfy-Krea2-AnimeStyle.

Where people get burned

The big one is flipping translate_prompts on with a stock CLIP and wondering why the queue dies - that RuntimeError is doing its job, it's just not obvious what it means. The clip input is also required even if you never translate, because it's the encoder doing the final conditioning. And if you're styling Krea 2 Turbo or another CFG-1 distilled model, remember the negative conditioning this node gives you is mostly inert - at CFG 1 there's no unconditional pass for a negative to steer, so write constraints as positives instead.

Honest verdict: the translate/refine features are the fiddly 20% you'll probably never touch. The checkbox style library is the 80%, and it's the rare kind of convenience that actually makes a model easier to use rather than just fancier.

Categoryeastmoe/Comfy-Krea2-AnimeStyle

Inputs (9)

NameTypeDefaultDescription
clipCLIPCLIP/text encoder used for final conditioning. CLIP-LLM generation is also used when translation is enabled.
positive_textSTRINGPositive image prompt written by the user.
lora_trigger_textSTRINGLoRA trigger words prefixed directly to the final positive prompt. This text is not translated or refined.
negative_textSTRINGNegative image prompt written by the user.
style_selectionSTRINGSelected style IDs. The web UI renders this as grouped checkboxes; manual comma/newline entries also work.
translate_promptsBOOLEANfalseTranslate user positive/negative prompts to English through the connected CLIP-LLM before encoding.
translation_max_lengthINT10241–1024Maximum CLIP-LLM generation length for each translation request.
refine_promptBOOLEANfalseExpand and polish the positive prompt with the connected CLIP-LLM before appending selected styles.
refinement_max_lengthINT10241–1024Maximum CLIP-LLM generation length for the positive prompt refinement request.

Outputs (2)

NameTypeDescription
positiveCONDITIONINGPositive conditioning with selected anime style descriptions appended.
negativeCONDITIONINGNegative conditioning encoded from the user negative prompt.