TK 光影提示词
One dropdown instead of twenty lighting tags
- lighting_prompt
Lighting is the cheapest quality lever in anime prompting, and it's also the one people fumble most. You know the image needs something - it's flat - so you type soft lighting, dramatic shadows, cinematic and hope. It works, sort of, and then you can never reproduce which combination you liked.
TK 光影提示词 is a preset picker for exactly that. One dropdown, a curated set of lighting tag combos, one string out. It's from TK Toolkit (anima-toolkit, publisher 时运tk), the toolkit that grew up around the Anima base model - a 2B Cosmos-Predict2 DiT with a Qwen3-0.6B text encoder whose default aesthetic is deliberately plain. That plainness is the reason a node like this exists: Anima as shipped is a true base, and "plain" plus "no lighting direction" is what you get if you don't say anything.
What it actually does
The node holds 23 presets, each a short tuple of three or four Danbooru-vocabulary lighting tags, and outputs one comma-terminated string.
The default is 通用|平衡柔光 - soft lighting, soft shadows, ambient lighting, high contrast. That combination is doing real work: soft key and soft shadows keep things from looking like a plastic figurine, while high contrast stops the softness from flattening the image into porridge. It names no time of day, no interior/exterior, no light direction, which is why it's the default.
The presets are grouped by how much they commit to. The four 通用 presets are scene-agnostic. Then there are scene presets (室内|窗边柔光, 室外|阴天柔光), time presets (时段|黄昏暖光), night presets (夜景|月光柔影, 夜景|城市柔光), directional ones (方向|柔和侧光, 方向|柔和顶光, 方向|柔和逆光, 方向|柔和轮廓光) and mood ones (氛围|柔和电影光, 氛围|高级低调光). The author's notes in the source spell out what each one refuses to add - 夜景|城市柔光 uses neon lights, dim lighting but no bloom or lens flare, 氛围|柔和电影光 adds no "cinematic style" words. That restraint is the whole value.
Inputs and output
You set three things:
- preset - the 23-item dropdown. This is the node.
- enable_custom_tags - off by default. Flip it and whatever you put in custom_tags gets appended, split on commas or newlines, trimmed, deduped.
- custom_tags - the escape hatch for
volumetric lightingor whatever your preset doesn't cover.
The single output is lighting_prompt, a STRING. It comes back comma-terminated (soft lighting, soft shadows, …) so it concatenates into a bigger prompt without you fixing the join. No preset name, no masterpiece, no style words leak into it - it's lighting tags only, which is what makes it safe to reuse anywhere.
Wire it into TK 文本合并, or straight into a CLIP text encode if the rest of your prompt is static.
The missing slider is a feature
There's no strength knob, and the source is explicit about why: numeric weight syntax is invalid for Anima, so shipping a slider would mean shipping something that lies to you. That call is correct. ComfyUI's prompt weighting is disabled in the encoder path on LLM-encoded models - (soft lighting:1.3) isn't weakened, it's handed to the encoder as literal punctuation inside your instruction, which is worse than deleting it. The author expresses light strength through which preset you pick instead, and that's the honest mechanism on this architecture.
Install
Same pack, same two routes:
# ComfyUI Manager / registry: search "TK Toolkit" (node id: anima-toolkit)
# manual:
cd ComfyUI/custom_nodes
git clone https://github.com/Ararararararaki/comfyui-anima-toolkit
# restart ComfyUI
Only aiohttp and requests are required, and Manager installs them from requirements.txt. The node lives under TK/prompt in the node menu - search "TK" and everything in the pack is under that root. Nothing needs downloading, and the bundled web panel is prebuilt, so no Node.js.
Things that bite
Don't use a time-of-day preset on an img2img reference. 时段|黄昏暖光 and 夜景|月光柔影 override the light in your source image; if you're trying to keep the original mood, 通用|低干预环境光 is the preset that was written for that case - it's the most conservative of the set on purpose.
Custom tags don't merge smartly. custom_tags is append-plus-dedupe, not conflict resolution. Add overhead lighting on top of 方向|柔和侧光 and you've asked for two key directions. The model will pick one, and it may not be the one you wanted.
This node is Anima-tuned, not model-agnostic. The tag list is plain booru vocabulary, so it works anywhere tags work, but the "no weights" design is a bet on LLM-encoded models. If you're pairing it with an Illustrious or Noonya-style SDXL finetune where (tag:1.2) still does something, you'll want to add weight yourself downstream.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| preset | COMBO | 通用|平衡柔光 | 23 options: 通用|平衡柔光, 通用|高对比柔光, 通用|柔和立体, 通用|低干预环境光, 室内|明亮柔光, 室内|暗色柔光, +17 |
| enable_custom_tags | BOOLEAN | false | — |
| custom_tags | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| lighting_prompt | STRING | — |