Negative Prompt Selector
Stop rewriting the same negative prompt over and over
- negative
Negative prompts are the part of your workflow you tune the least and copy-paste the most. "blurry, lowres, bad anatomy, extra fingers, watermark…" - you've got a version for portraits, a version for landscapes, a strict one, a loose one. Negative Prompt Selector lets you store up to 20 of them in one node and pick which one ships to your CLIP Text Encode node with a single index. Boring? Sure. Genuinely useful? Very.
What it does
The node is just a lookup table plus an index. You type your negative prompts into the multiline negative1…negative20 fields, and which_negative (1–20) decides which one comes out of the single negative STRING output. Nothing clever happens at execution - it's a text switch, and that's exactly what you want: zero surprises, and it composes with every other index generator in this pack.
The part that makes it click: the tooltip for which_negative explicitly tells you to "connect the index output of a text index switch here." That's the intended pairing. Use AUN Random/Select INT or AUN Text Index Switch to generate an index - random, cycling, or fixed - and feed it in. Now your negative prompt rotates in lockstep with your positive prompts, which is how you get coherent variation instead of a mismatched prompt/negative mashup.
Inputs worth knowing
which_negative(INT, 1–20) - the selector. Default 1. Wire it, don't type it.visible_inputs(INT, 2–20) - how many of the 20 fields actually render on the node. Drop this to 4 when you only use four, and the node stops being a wall of text boxes.negative1…negative20- the prompts themselves. Multiline, so you can stack several phrases per slot.
Only one output: negative (STRING), which goes straight into a CLIP Text Encode node's negative input.
Common setups
- Fixed set, manual pick - set
which_negativeby hand, usevisible_inputsto keep it small. Basically a nicer dropdown. - Paired with a cycler - drive
which_negativefrom the same index that drives your positive prompt switch, and each prompt in your rotation gets the negative that belongs to it. - Random negatives - feed a
Random/Select INTset to Random over the range you want, and every batch gets a different negative. Handy for exploring, mildly chaotic for reproduction - keep the seed fixed when you want it back.
Install
It's part of the AUN ComfyUI Nodes pack (loz2754), so install the pack once and this appears under AUN Nodes/Text. ComfyUI Manager: search "AUN ComfyUI Nodes". Or:
cd ComfyUI/custom_nodes
git clone https://github.com/loz2754/AUN-ComfyUI-Nodes
Then restart ComfyUI. The pack's Python deps (piexif, opencv-python-headless, imageio-ffmpeg, requests) are handled by Manager; manually, pip install -r custom_nodes/AUN-ComfyUI-Nodes/requirements.txt. No model downloads - this is a text-routing utility.
The one trap
There is no validation that which_negative is within visible_inputs. If you hide fields, the hidden ones still work - but a beginner will assume a hidden field is disabled and then wonder why a negative from slot 17 is leaking into output. Either keep the range honest or just leave everything visible. And a tip from experience: don't put your entire life story in one negative slot. Keep them focused; the node makes it cheap to have a "quality fixes" negative and a "style fixes" negative as separate options.
Inputs (22)
| Name | Type | Default | Description |
|---|---|---|---|
| negative1 | STRING | Negative prompt option 1. | |
| negative2 | STRING | Negative prompt option 2. | |
| negative3 | STRING | Negative prompt option 3. | |
| negative4 | STRING | Negative prompt option 4. | |
| negative5 | STRING | Negative prompt option 5. | |
| negative6 | STRING | Negative prompt option 6. | |
| negative7 | STRING | Negative prompt option 7. | |
| negative8 | STRING | Negative prompt option 8. | |
| negative9 | STRING | Negative prompt option 9. | |
| negative10 | STRING | Negative prompt option 10. | |
| which_negative | INT | 11–20 | Select which negative prompt (1-20) to output. Connect the index output of a text index switch here. |
| visible_inputs | INT | 102–20 | How many negative prompt fields to show on the node (2-20). |
| negative11 | STRING | Negative prompt option 11. | |
| negative12 | STRING | Negative prompt option 12. | |
| negative13 | STRING | Negative prompt option 13. | |
| negative14 | STRING | Negative prompt option 14. | |
| negative15 | STRING | Negative prompt option 15. | |
| negative16 | STRING | Negative prompt option 16. | |
| negative17 | STRING | Negative prompt option 17. | |
| negative18 | STRING | Negative prompt option 18. | |
| negative19 | STRING | Negative prompt option 19. | |
| negative20 | STRING | Negative prompt option 20. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| negative | STRING | — |