Stylebook Modifier
Lighting, colour grade, era, finish or mood
- style_chain
- prompt
- negative
- style_chain
The stylebook chain has a division of labour: Style picks the medium, Artist picks the who, and Modifier is the finishing pass - the tilt that turns "a photo" into "a photo, golden hour, taken in the 1970s". One modifier per axis, on five axes: lighting, colour grade, era, finish, and mood. That's 110 modifiers in the pack, each with a description you can read before you commit.
You'd reach for this when a style gets you 90% of the way and the last 10% is a mood or a light you want to dial in deliberately. A style says how it's drawn; a modifier says what the light/colour/time does to it.
How it works
Modifiers live on the shared style_chain socket, stored per axis. The rule that keeps the chain sane is that each axis holds exactly one modifier - so if you want to set lighting and mood, you use two Modifier nodes, one per axis. Drop a second modifier on an axis a previous node already set, and it replaces the old one rather than stacking two competing instructions.
There's a second rule that's easy to miss and saves you from mud: some styles already own an axis. Cyanotype fixes its own colour grade, so a Sepia modifier is fighting it. The chain detects this - the Style node's resolved style declares which axes it blocks - and silently drops the conflicting modifier, with a warning on the node's face, instead of letting you render two instructions that cancel out. That's the pack refusing to produce the murky middle, and it's a genuinely thoughtful touch.
The node also feeds the negative: any modifier with a matching negative contributes it to the negative output, alongside the style's own.
The inputs
axis- which of the five axes this node tilts. Defaults tolighting.mode- defaults toPick, deliberately, because a modifier is a finishing tilt you're supposed to choose.RandomandCyclework the same way as the other stylebook nodes (seeded, reproducible random versus index-based sweeping).modifier- defaults to Off, which applies nothing. The list narrows to the selected axis. Fresh nodes do nothing until you pick, which is the right default for a finishing pass.seed/cycle_index- for Random and Cycle respectively. Same semantics as Stylebook Style: the seed is stable as the pack grows; the cycle index is a list position that shifts when new modifiers ship.style_chain(optional) - connect an upstream stylebook node's output here.
Outputs are the usual three: prompt (the full re-rendered prompt, read from any node in the chain), negative, and style_chain to keep the chain flowing downstream.
Installing
ComfyUI Manager → search Stylebook, or:
cd ComfyUI/custom_nodes
git clone https://github.com/EnragedAntelope/comfyui-stylebook.git
Restart ComfyUI; nodes are under conditioning/stylebook. As with the rest of the pack: no third-party dependencies, no model downloads, no API keys, fully offline. The one requirement is a current ComfyUI - the pack targets the newer V3 node API, so it wants ComfyUI 0.25.0+. If the nodes never appear in the node menu, that's the first thing to fix.
Where people get burned
Most modifier problems are actually style problems. If your modifier seems to do nothing, check whether the style you chained in front of it already owns that axis - the node will have printed a warning saying the modifier was dropped. If you genuinely want both, you're fighting the style's intent; pick a different style or a different axis.
The other subtle one: a modifier is a tilt, not a replacement for the style. Set too many axes at once and your chain starts to describe the modifiers more than the subject. One well-chosen axis (usually lighting or colour grade) reads as intentional; four reads as a prompt someone wrote while shopping for adjectives. And remember the ordering rule from the README - Style, then Artist, then Modifier - because the modifier is the last thing applied before the text reaches the encoder, and that's where a deliberate tilt belongs.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| axis | COMBO | lighting | Which rendering axis this node tilts. Each axis holds exactly one modifier, so use one Modifier node per axis you want to set. Era tilts how the image is rendered - palette, light, surface, finish - and adds nothing to the picture; Period Dress is the axis that puts period wardrobe and its fittings in it. Pair them for a full period look, or use Era alone on any subject. |
| mode | COMBO | Pick | Pick: choose one modifier yourself, which is the default because a modifier is a deliberate finishing tilt. Random: a seeded pick from this axis. Cycle: step through this axis by index. |
| modifier | COMBO | Off | The modifier to apply in Pick mode. The list narrows to the selected axis. Off applies nothing, which is what a fresh node does. |
| seed | INT | 00–18446744073709550000 | Seed for Random mode. The same seed on the same axis gives the same modifier. |
| cycle_index | INT | 00–9999 | Which modifier to take in Cycle mode. 0 is the first on this axis and the index wraps at the end. This is a list position, not a seed, so adding modifiers to an axis shifts it. Cycle mode steps the index automatically each run (right-click the node to turn 'Auto-advance cycle' off if you want to hold a fixed index). |
| style_chainopt | STYLEBOOK_CHAIN | Connect an upstream Stylebook style_chain output. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | — |
| negative | STRING | — |
| style_chain | STYLEBOOK_CHAIN | — |