Nodes/comfyui-daz-tools/Workflow Config Image
ComfyUI Node

Workflow Config Image

Save a whole still-image setup as one dropdown

By denyazzolin·Created 3 months ago·Updated 9 days ago· 3
Workflow Config Image
    • diffuser
    • checkpoint_model
    • checkpoint_vae
    • checkpoint_clip
    • vae
    • clip
    • width
    • height
    • steps
    • seed
    • cfg
    • master_prmt
    • pos_prompt
    • neg_prompt
    • is_relay_prompt
    • filename
    • flag_1
    • flag_2
    • flag_3
    • custom_1
    • custom_2
    movie
    scene
    take

    Workflow Config Image is the still-image member of the comfyui-daz-tools config family. Where the WAN2.2 and LTX2.3 nodes manage whole video scenes - two-pass models, audio, frames, eight LoRA slots - this one trims all of that away and keeps just the image essentials: a model, a VAE, a CLIP, a prompt, dimensions, steps, and a seed, all saved as a named scene you switch with one dropdown. It's the same movie / scene / take system, minus the video baggage.

    What it stores

    Configs live in ComfyUI/user/default/workflows/.dx_mgr/ as dx_*.json files, exactly like the video config nodes. Each scene has a name, an optional group, a note, a reference image, width/height, steps, seed (with a Randomize toggle), CFG, and the master / positive / negative prompt trio.

    Two loading paths, your choice: fill in a Checkpoint (model + CLIP + VAE in one file) or standalone Diffuser / VAE / CLIP paths. The node loads whichever set you populate - all outputs are available regardless, so you can swap a checkpoint scene to standalone models without rewiring. The standalone CLIP has a CLIP Type field so the right encoder family gets loaded (stable_diffusion, flux, sd3, wan, hidream, chroma, and more). If your scene uses a GGUF diffuser, that's handled too, but only if ComfyUI-GGUF is installed - otherwise a GGUF scene errors loudly instead of silently falling back.

    There are no LoRA slots and no audio on this node, and it doesn't show the I2V/T2V type filter. It does keep the two flag_*-style routing toggles and the genuinely handy custom_1 / custom_2 string outputs: give each a label (say, "scheduler" and "style name") and pipe arbitrary values downstream without hardcoding them in other nodes.

    Inputs and outputs

    The node's own inputs are just movie, scene, and take dropdowns - everything else is read from the saved config. The outputs you'll actually connect:

    • diffuser, checkpoint_model, checkpoint_vae, checkpoint_clip, vae, clip - the loaded components, ready for the KSampler.
    • width, height, steps, seed, cfg - straight into Empty Latent and sampler.
    • master_prmt, pos_prompt, neg_prompt, is_relay_prompt - the prompt bundle. For Simple and Beats types the master prompt is prepended automatically; Smart passes the positive through for a relay node.
    • filename, flag_1flag_3, custom_1, custom_2.

    Installing it

    Shared install for the pack:

    cd ComfyUI/custom_nodes
    git clone https://github.com/denyazzolin/comfyui-daz-tools
    

    Restart ComfyUI. No extra Python dependencies; optionally add ComfyUI-GGUF if you want quantized diffusers in the dropdown.

    Gotchas

    Same family rules as the video config nodes: Save overwrites the current take while + Version snapshots a new one (that's your A/B testing mechanism), the config JSON is plain text so back up .dx_mgr/, and model names are checked at run time - a scene pointing at a deleted file raises "model not found". And if the editor panel ever renders wrong after a ComfyUI update, check the Nodes 2.0 toggle first; custom node UIs like this are what that frontend feature tends to break.

    Categoryutils

    Inputs (3)

    NameTypeDefaultDescription
    movieCOMBO1 options: (default)
    sceneCOMBO1 options: (no configs)
    takeCOMBO1 options: 1

    Outputs (21)

    NameTypeDescription
    diffuserMODEL
    checkpoint_modelMODEL
    checkpoint_vaeVAE
    checkpoint_clipCLIP
    vaeVAE
    clipCLIP
    widthINT
    heightINT
    stepsINT
    seedINT
    cfgFLOAT
    master_prmtSTRING
    pos_promptSTRING
    neg_promptSTRING
    is_relay_promptBOOLEAN
    filenameSTRING
    flag_1BOOLEAN
    flag_2BOOLEAN
    flag_3BOOLEAN
    custom_1STRING
    custom_2STRING