Factory Prompts Negative Generator (Toggles)
The same negative builder with a seed input it doesn't need
- negative_prompt
- selected_categories
Third negative node in the same pack, and the first thing to know is that it's basically the Categorized node with a second output and a seed input bolted on. FactoryPromptsNegativeToggle is the "toggles" take on the same generator: the same hard-coded category lists, the same deduplication, the same (term:1.2) strength boost - but the panel is regrouped (quality, anatomy, style, composition, content) and you get a running list of what you actually enabled.
What's different here
The seed input is the headline, and it's a bit of a lie. The negative generator is fully deterministic - every category is a fixed list of tags, nothing is ever randomly chosen - so seeding it changes nothing. The code calls random.seed(seed) and then never draws a random number. You can wire your workflow seed into it for tidiness, but the output will be identical regardless. Don't go hunting for "seed 12345 produces a different negative," because it doesn't.
What's genuinely useful is the second output. This node returns two STRINGs instead of one:
negative_prompt- the assembled comma-joined tags, wired into CLIPTextEncode's negative input.selected_categories- a human-readable list likeBase Quality, Anatomy Control, Text Removal, telling you exactly which category switches contributed to that prompt. It's a built-in changelog, and it's handy if you're logging experiments or handing a workflow to someone else.
The toggle set matches the Categorized node's, just rearranged and with different defaults. On by default: base_quality, anatomy_control, non_realistic_style_control, composition, text_removal. Off by default: everything else, including enhanced_quality and technical_artifacts, which the Categorized node has on. So the out-of-the-box output here is leaner - more like the pack's "standard"-ish starting point than its comprehensive one. custom_negatives and strength_boost behave exactly as in the sibling nodes.
Which of the three should you use?
This pack ships three negative nodes that overlap heavily, which is worth knowing before you pick:
FactoryPromptsNegative- preset-driven, one dropdown. Best when you want a solid default fast.FactoryPromptsNegativeCategorized- every category as a switch, single output. Best for actually tuning a workflow.FactoryPromptsNegativeToggle- the same switches, reorganized, plus the category summary output. Reach for it when you want the "what's in my negative" report for free.
If you don't need the summary, save yourself the mouse clicks and use Categorized.
Install
Same as the rest of the pack - pure stdlib, no dependencies, no model downloads:
cd ComfyUI/custom_nodes
git clone https://github.com/HWDigi/Factory-Prompts_comfyui
# restart ComfyUI
Or via ComfyUI Manager under "Factory Prompt Generator". The nodes live in the "Prompt Factory" category.
The caveat that applies to all three
This emits booru-style tags that do real work on the SDXL lineage - Pony, Illustrious, NoobAI - at normal CFG. On Flux or a guidance-distilled model at CFG 1, the negative prompt is inert, so the whole generator is decoration. And keep in mind the README's "all checkpoint types" claim: the quality tags in here are the anime-SDXL kind (worst_quality, low_quality), while Pony wants its score_x tags - add those via custom_negatives. Simple tool, real limits, and once you know the limits it's a convenient bit of plumbing.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| seed | INT | 00–18446744073709550000 | — |
| base_qualityopt | BOOLEAN | true | — |
| enhanced_qualityopt | BOOLEAN | false | — |
| technical_artifactsopt | BOOLEAN | false | — |
| anatomy_controlopt | BOOLEAN | true | — |
| expression_controlopt | BOOLEAN | false | — |
| hair_controlopt | BOOLEAN | false | — |
| non_realistic_style_controlopt | BOOLEAN | true | — |
| realistic_style_controlopt | BOOLEAN | false | — |
| unwanted_mediumsopt | BOOLEAN | false | — |
| color_controlopt | BOOLEAN | false | — |
| compositionopt | BOOLEAN | true | — |
| background_controlopt | BOOLEAN | false | — |
| text_removalopt | BOOLEAN | true | — |
| clothing_controlopt | BOOLEAN | false | — |
| nsfw_filtersopt | BOOLEAN | false | — |
| violence_filtersopt | BOOLEAN | false | — |
| strength_boostopt | BOOLEAN | false | — |
| custom_negativesopt | STRING | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| negative_prompt | STRING | — |
| selected_categories | STRING | — |