Nodes/DOGMA Nodes/DOGMA Local Prompt v34 — FIX FIRST
ComfyUI Node

DOGMA Local Prompt v34 — FIX FIRST

The DOGMA prompt node that stops Klein redecorating your car

By axior·Created 4 months ago·Updated 3 days ago· 1
DOGMA Local Prompt v34 — FIX FIRST
    • prompt
    • info
    category
    vlm_instruction

    You've got the crop, you've got the mask, and your local Qwen-VL has written a sentence about what's wrong with the car. Now you need that sentence to survive contact with a FLUX.2 Klein pass running at denoise 0.3 on a 1024px crop. That's the whole job of this node.

    DOGMALocalPromptV34 is a prompt compiler, not a text box. It takes the VLM's free-form diagnosis and turns it into a short, front-loaded instruction whose first three words are the repair target. The display name says it: FIX FIRST.

    Why the first words matter

    Local detail passes fail in a predictable way. The crop gets re-rendered, the model reads your prompt as a general vibe, and suddenly there are four cars instead of three, the license plate says something new, and the bodywork has been "improved" into a different decade. In a crop-edit-stitch loop the prompt is the only thing steering a low-denoise pass, so a vague one buys you a vague edit - this is the same failure the broader detailing literature warns about, where over-processing a region changes it without improving it.

    So this node does the boring, effective thing: it puts FIX CARS: at the very front, then follows with identity-preservation language, then clamps everything to a length Klein actually digests.

    What it does with the VLM's answer

    Wire your VLM's description into vlm_instruction. The node:

    • collapses whitespace and strips code fences
    • drops the entire instruction if it contains a destructive or text-rewriting verb - remove, delete, erase, replace, rewrite, rename, respell, invent, add new, create new
    • treats none, no visible defect and empty output as a no-op
    • keeps only the first line, truncates to 150 characters, and strips any FIX LABEL: prefix so it can guarantee the opening words
    • appends the guardrails for you: keep count, position, scale, direction/pose, colour and occlusion; keep all text and logos unchanged
    • clamps the finished prompt to 310 characters at a word boundary

    Either way you get two outputs: prompt, which goes into your text encode for the local pass, and info, which is a one-line report - how many characters it built, or that it fell back.

    Inputs and outputs that matter

    category is the only thing you set, and you set it by wiring it from the planner upstream (cars, people, buildings, sky…) rather than typing prose - the node uppercases it into the FIX … label and reuses it in the preserve sentence. vlm_instruction is the multiline diagnosis.

    That's the whole node. Two required inputs, prompt and info out.

    Install

    Through ComfyUI Manager, search DOGMA Nodes, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/axior/ComfyUI-DOGMA-Nodes
    

    Restart ComfyUI. No extra Python packages - the pack's requirements.txt is literally a comment saying so, and pyproject.toml lists no dependencies. The models are the workflow's problem, not the pack's: a FLUX.2 Klein checkpoint for the local pass and a Qwen-VL for the diagnosis.

    Where people get burned

    The destructive-verb filter is blunt. If your VLM helpfully writes "remove the dead vegetation around the wheels", this node throws the whole instruction away and you get a preserve prompt. That's deliberate - it would rather do nothing than let a local pass start deleting things - but it means your VLM instruction should describe what to fix, not what to take out.

    The 150/310 character clamps are silent. A VLM that writes you a beautiful 400-character paragraph will get sliced mid-thought.

    And the PRESERVE OBJECTS. fallback isn't decoration: it's the exact string the preserve gates in this pack look for (DOGMALocalResultGateV34, DOGMALocalSafetyGateV36). Don't wrap this node's output in your own prose, or you'll quietly break the gates downstream.

    If you're picking between the v34/v35/v36 prompt nodes: they're three answers to the same question, not a progression. This one keeps an explicit "reconstruct only the existing masked X" sentence and gives Klein the most room to phrase with.

    CategoryDOGMA/Semantic Detailer

    Inputs (2)

    NameTypeDefaultDescription
    categorySTRING
    vlm_instructionSTRING

    Outputs (2)

    NameTypeDescription
    promptSTRING
    infoSTRING