easy prompt
The guided prompt builder, explained
- prompt
easy prompt is a scaffolding node. You type your actual idea into a text box, then pick from a row of dropdowns for the parts you always forget to describe - the subject, the lighting, the background - and it staples those preset phrases onto what you wrote. Out the other side comes one finished prompt string. That's the whole trick. It's for the moment you're staring at an empty CLIP Text Encode box wondering how to start.
It lives in the ComfyUI Easy Use pack by yolain, one of the big "quality of life" integration packs in the same spirit as rgthree or the old Efficiency Nodes - none of these generate anything, they just make ComfyUI less of a chore to wire up. Easy Use itself is built on top of the older TinyTerra nodes, and easy prompt is one of its smaller conveniences, added back in v1.1.7 as "subject and light presets."
What it actually does
Look at the inputs and it's obvious. There's text, a plain multiline box where your real prompt goes. Then seven dropdowns: prefix, subject, action, clothes, environment (that's the lighting one), background, and nsfw. Each dropdown holds a curated list of canned phrases, and each one defaults to a "Select the … add to the text" placeholder - meaning if you leave it alone, it adds nothing. Pick an entry and its phrase gets folded into your prompt. The single output is prompt, a STRING.
The mechanism is dead simple: string concatenation with a nicer UI. No model runs, no API is called - it hands you text, and text is all it is.
The two dropdowns worth your attention are subject and environment - a subject and a lighting/illumination preset are the two things beginners most often leave vague, and they're the ones that move an image the most. prefix, action, clothes, and background are flavor you can ignore until you want them. The nsfw dropdown is just another category of preset phrasing; what you do with it is on you and on the model you're feeding.
Where it wires in
The prompt output is an ordinary string, so it goes anywhere a prompt string is expected. The normal home is the text input of a CLIP Text Encode (Prompt) node, or straight into the positive slot of one of Easy Use's own loaders (easy a1111Loader, easy fullLoader, and friends). From there it's business as usual: encode, sample, decode. Being just text, it also chains cleanly into another prompt-editing node.
The honest caveat: know your encoder
Here's the thing a guided prompt builder can't tell you. The presets baked into this node are the classic descriptive-tag style that grew up on SD 1.5 and SDXL, and that style is not universal anymore. In 2026 a lot of models (Z-Image, Flux 2 Klein, Anima, Krea) read your prompt through a general-purpose LLM - they want a plain-language instruction, not a pile of comma-separated modifiers, and quality-tag vocabulary they were never trained on just wastes tokens. On those models, a stack of generic preset phrases can do nothing or actively dilute your description.
So use easy prompt for what it's good at: getting unstuck, and reminding yourself to specify subject and lighting. But if you're on a modern flow-matching or LLM-encoded model, treat the output as a rough draft you rewrite into a clean sentence, not gospel. And watch for contradictory tags - the fastest way to get mush is to let a preset drop in a phrase that fights your own text. One coherent description beats seven presets averaged together.
Installing it
You get the whole Easy Use pack, not this one node. Two ways:
- ComfyUI Manager - open the Manager, search ComfyUI Easy Use (or
ComfyUI-Easy-Use), install, restart. This is the path to prefer. - Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/yolain/ComfyUI-Easy-Use, then install the requirements (install.baton Windows, orpip install -r requirements.txt) and restart ComfyUI.
easy prompt needs nothing beyond the base pack - no model download, no companion nodes. One heads-up that applies to every custom node: they're arbitrary Python installed into your shared environment, so a big pack like this can pull in dependencies that scuffle with what you've already got. Install from Manager, and if a workflow breaks right after adding a pack, that's the first place to look.
When to skip it
If you already know your model and your prompt style, this node is training wheels you don't need - type into CLIP Text Encode directly and move on. Its value is entirely in the guardrails: a good on-ramp, a mediocre destination. Reach for it when you're new to a model family or genuinely blanking on a scene, and graduate off it once the presets feel like a cage.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| prefix | COMBO | Select the prefix add to the text | 9 options: Select the prefix add to the text, Detailed photo of, Amateur photo of, Flicker 2008 photo of, Fantastic artwork of, Vintage photograph of, +3 |
| subject | COMBO | 👤Select the subject add to the text | 13 options: 👤Select the subject add to the text, a man, a woman, a young man, a young woman, a handsome man, +7 |
| action | COMBO | 🎬Select the action add to the text | 28 options: 🎬Select the action add to the text, looking at viewer, looking away, looking up, looking down, looking back, +22 |
| clothes | COMBO | 👚Select the clothes add to the text | 148 options: 👚Select the clothes add to the text, underwear, clothed, casual, dress, swimsuit, +142 |
| environment | COMBO | ☀️Select the illumination environment add to the text | 68 options: ☀️Select the illumination environment add to the text, sunshine from window, neon night, city, sunset over sea, golden time, sci-fi RGB glowing, cyberpunk, +62 |
| background | COMBO | 🎞️Select the background add to the text | 69 options: 🎞️Select the background add to the text, cars and people, a cozy bed and a lamp, a forest clearing with mist, a bustling marketplace, a quiet beach at dusk, +63 |
| nsfw | COMBO | 🔞️Select the nsfw add to the text | 28 options: 🔞Select the nsfw add to the text, nude, breast, small breast, middle breast, large breast, +22 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | — |