Nodes/Doom_Flux_NodePack/Doom Prompt Builder
ComfyUI Node

Doom Prompt Builder

Doom Prompt Builder

By PeterMikhai·Created about a year ago·Updated 6 days ago· 1
Doom Prompt Builder
    • prompt
    separator,
    prefix
    subject
    style
    lighting
    camera
    quality
    suffix

    The modern text encoder wants structure, not a comma tsunami. On Flux, Krea 2, H3, and every other LLM-encoded model, your prompt is read like an instruction: the model parses blocks and binds attributes, and a wall of tags pasted in whatever order they fell out of your head reliably blurs into mush. Doom Prompt Builder is a small, honest answer to that - it gives you seven labeled boxes - prefix, subject, style, lighting, camera, quality, suffix - and joins the ones you actually filled in, in order, with a separator you control.

    That's the whole job, and it's a good job to hand to a node. You type "candlelit evening" into the lighting field instead of burying it mid-sentence, and the assembled string comes out with a clean , between sections. Empty boxes are skipped, so you can build a reusable template where half the sections stay blank and nothing breaks.

    The inputs

    • separator - what joins the sections. Default , , which is the right call for almost everything. Set it to \n\n (a blank line) if you're building the block-structured prompts the KB recommends for LLM-encoded models.
    • prefix / subject / style / lighting / camera / quality / suffix - all optional, all multiline. The order is fixed: whatever you put in prefix comes first, subject second, and so on. That ordering is the actual feature - word order binds attributes on these models, so "candlelit evening" in lighting and "a woman reading" in subject reads differently than the reverse.

    Output is a single prompt string. Feed it into any sampler's prompt input, or into a DoomTextShow if you want to eyeball the result before it touches a model.

    Where it sits in a workflow

    This is a composer, not a generator - it doesn't add anything on its own. Where it earns its place is in front of the Doom pack's own prompt machinery: let DoomRandomPrompt or DoomWordbook supply vocabulary, or DoomMultiPromptLoader supply subjects, and let the Builder be the stable spine that holds the format constant while you rotate content. It also pairs naturally with Doom_ReferenceFree in image-to-image setups, where the builder gives you a fixed "what do I want changed" template.

    Install is the usual pack drill:

    cd ComfyUI/custom_nodes
    git clone https://github.com/PeterMikhai/Doom_Flux_NodePack
    

    Restart ComfyUI, or grab it through Manager by searching "DoomAI Nodes". No extra dependencies - this is pure string assembly.

    The honest caveats

    • It won't write the prompt for you. The quality of what comes out is capped by what you put in each box. It's an organizational tool, not a creative one.
    • Don't over-stuff the boxes. The KB's own finding is that prompts past ~75–100 effective tokens start drifting on LLM-encoded models. Seven fat sections of boilerplate is exactly how you overshoot. Keep quality to one or two words, not a paragraph.
    • Section order is fixed. If you want "camera" before "subject", this node isn't the tool - the order is baked in.

    One light note: the whole pack is Russian-authored (tooltips are in Russian, the author signs off "Znai nashih!"), so the UI is a bilingual experience - the field names are English, but hover a tooltip and you may need a translation tab. Small price for a node that does its one job without drama.

    CategoryDoom/Prompt

    Inputs (8)

    NameTypeDefaultDescription
    separatorSTRING, Разделитель секций (по умолчанию ', ')
    prefixoptSTRINGНачало промпта
    subjectoptSTRINGСюжет/объект
    styleoptSTRINGСтиль
    lightingoptSTRINGОсвещение
    cameraoptSTRINGКамера/ракурс
    qualityoptSTRINGКачество/детализация
    suffixoptSTRINGКонцовка промпта

    Outputs (1)

    NameTypeDescription
    promptSTRINGСобранный промпт