NSFW
The Optional Explicit Layer — and Why You Can Just Ignore It
- nsfw
Let's be direct about what this is: NSFW is the optional explicit-content layer of the Prompt Builder pack, and the README is just as direct - "This node is optional and can be ignored entirely." You can build a complete SFW workflow and never touch it, because the pack keeps its sections cleanly separated. If that's your plan, skip to the install section and don't look back.
For everyone else, this is where the pack's Danbooru heritage is fully on display. The Danbooru tag taxonomy that these anime-SDXL models were trained on includes a large, meticulously-organized explicit vocabulary - and this node is essentially a curated front-end for it. Where the Character node's nudity dropdown is suggestive, this one goes all the way, organized into 15 categories that look like they were copy-pasted from the Danbooru wiki (because they were).
How it works
Mechanically it's the same as the other section nodes: dropdowns from presets.json, comma-joined, None skips. The categories include sex_acts (footjob, handjob, breast play…), positions (doggystyle, prone bone, spitroast…), group_sex_acts (gangbang, double penetration…), cum_play (three slots), bondage_and_discipline and two bondage_positions slots, exhibitionism_and_voyeurism, breasts (lactation, expansion…), views (x-ray, internal cumshot), and even a facial_expressions dropdown with ahegao in it.
The single output is nsfw - a string that plugs into the nsfw input on the Combine Prompt node, where it joins last, after the character and environment. That placement is deliberate and worth respecting: explicit tags lead nothing.
Install
Identical to the rest of the pack - no dependencies, no model files, Python 3.10+ only.
cd ComfyUI/custom_nodes
git clone https://github.com/zinigo-creations/comfyui-prompt-builder
Or via ComfyUI Manager, searching "Prompt Builder", then restart.
Common issues
The one real constraint is the model. This vocabulary only produces anything on an uncensored checkpoint - Pony V6 and its derivatives, NoobAI, the Illustrious lineage. On a censored or safety-gated model, these tags either do nothing or actively fight the pipeline. And there's a packing trap specific to this node: it has three cum_play slots and two breasts slots, and stacking all of them is how you get an image where the explicit content out-prioritizes everything else in the prompt. Pick one or two categories max, keep the rest on None, and remember the README's own advice - simple prompts produce better results, even here.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| sex_acts | COMBO | 32 options: None, presenting, footjob, implied footjob, pussyjob, buttjob, +26 | |
| group_sex_acts | COMBO | 36 options: None, group sex, bisexual, bisexual female, bisexual male, oral sandwich, +30 | |
| penetration_and_insertion | COMBO | 70 options: None, animal insertion, cervical penetration, covered penetration, deep penetration, food insertion, +64 | |
| breasts_1 | COMBO | 9 options: None, breast expansion, breast smother, cooperative breast smother, lactation, breastfeeding, +3 | |
| breasts_2 | COMBO | 9 options: None, breast expansion, breast smother, cooperative breast smother, lactation, breastfeeding, +3 | |
| bondage_and_discipline | COMBO | 42 options: None, bdsm, asphyxiation, strangling, bondage, bound together, +36 | |
| cum_play_1 | COMBO | 40 options: None, cum, bukkake, cumdump, cum bath, cumdrip, +34 | |
| cum_play_2 | COMBO | 40 options: None, cum, bukkake, cumdump, cum bath, cumdrip, +34 | |
| cum_play_3 | COMBO | 40 options: None, cum, bukkake, cumdump, cum bath, cumdrip, +34 | |
| exhibitionism_and_voyeurism | COMBO | 20 options: None, exhibitionism, clothed sex, public indecency, public nudity, zenra, +14 | |
| facial_expressions | COMBO | 7 options: None, :>=, fucked silly, ahegao, torogao, naughty face, +1 | |
| views | COMBO | 4 options: None, cross-section, internal cumshot, x-ray | |
| positions | COMBO | 30 options: None, 69, sex from behind, doggystyle, bent over, prone bone, +24 | |
| bondage_positions_1 | COMBO | 25 options: None, bound, bound arms, bound fingers, bound wrists, bound breasts, +19 | |
| bondage_positions_2 | COMBO | 25 options: None, bound, bound arms, bound fingers, bound wrists, bound breasts, +19 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| nsfw | STRING | — |