Nodes/ComfyUI-JurdnsMetadataNodes/Jurdns Prompt Parameters
ComfyUI Node

Jurdns Prompt Parameters

Your whole generation recipe in one node, wired for metadata

By jurdnf·Created about a year ago·Updated about a year ago· 0
Jurdns Prompt Parameters
    • positive_prompt
    • negative_prompt
    • sampler_for_ksampler
    • scheduler_for_ksampler
    • sampler_for_metadata
    • scheduler_for_metadata
    • steps
    • cfg
    • denoise
    • seed
    positive_prompt
    negative_prompt
    sampler_nameeuler
    schedulernormal
    steps20
    cfg8.0
    denoise1.00
    seed0

    Here's the awkward bit of saving ComfyUI metadata: a KSampler wants its sampler as a native enum type, but a metadata save node wants it as a plain string - and if you type them in two places, you get mismatches your PNG will faithfully record forever. Jurdns Prompt Parameters is the node that sits in the middle and makes the two agree. It's a parameter hub: you type your prompts and every sampling setting once, and it fans the same values out to both the sampler and the save node.

    It's one of the two nodes in ComfyUI-JurdnsMetadataNodes, designed to feed its sibling Jurdns Metadata Image Save. It's also a clean example of the value-node pattern: one authoritative source, many consumers, no pixels touched.

    How it works

    There's no computation here - it's a pure passthrough that returns the values you give it. The clever bit is what happens to the sampler and scheduler. ComfyUI's sampler list is an enum type, and KSampler's sampler_name and scheduler inputs accept that type once you convert them to inputs. So the node outputs the sampler twice:

    • sampler_for_ksampler / scheduler_for_ksampler - in the native KSampler types, so they plug straight into KSampler's sockets.
    • sampler_for_metadata / scheduler_for_metadata - as plain strings, for the metadata save node.

    Everything else - steps, cfg, denoise, seed, both prompts - has a single output that serves both sides. Because the dropdown lists are pulled from comfy.samplers.KSampler.SAMPLERS and SCHEDULERS at load time, they always match your ComfyUI version exactly; new samplers show up in the dropdown after an update without you touching the node.

    The inputs

    Seven, and all boring in the good way:

    • positive_prompt and negative_prompt - multiline text, defaults to empty.
    • sampler_name - every sampler ComfyUI ships (44 at last count), default euler.
    • scheduler - the nine schedulers, default normal.
    • steps (1–10000, default 20), cfg (0–100, default 8), denoise (0–1, default 1), seed (0 to 2⁶⁴−1, default 0).

    Wiring it into a workflow

    The prompts here are plain text, not conditioning - a common first trip-up. You still need CLIP Text Encode nodes to turn them into the conditioning KSampler wants. Convert the text widget on each encoder to an input and wire the strings in:

    Jurdns Prompt Parameters
     ├─ positive_prompt ──► CLIP Text Encode (positive) ──► KSampler positive
     ├─ negative_prompt ──► CLIP Text Encode (negative) ──► KSampler negative
     ├─ sampler_for_ksampler ──► KSampler sampler_name
     ├─ scheduler_for_ksampler ──► KSampler scheduler
     └─ steps / cfg / denoise / seed ──► KSampler (converted inputs)
    
     Jurdns Prompt Parameters ──► Jurdns Metadata Image Save (every output)
    

    Model, CLIP, VAE, and latents still come from your loader and empty-latent nodes as usual - this node only holds the sampling parameters and the raw prompt text.

    Gotchas

    • It doesn't randomize your seed. control_after_generate lives on KSampler, not here. If KSampler's seed widget randomizes internally, the save node never learns what was actually used, and your PNG records the hub's seed instead - a silent metadata lie. If you want random seeds, generate them upstream and feed that into the hub, keeping one source of truth.
    • It only helps if you route everything through it. Leave the save node's inputs dangling and it errors anyway (they're forceInput), so commit to the pattern or skip it.
    • It saves a recipe, not immortality. The parameters chunk still dies on any re-encode - keep the original PNG if you're sharing.

    Install

    Shared with the rest of the pack: ComfyUI Manager → Install Custom Nodes → search "ComfyUI-JurdnsMetadataNodes", or clone and restart. No extra dependencies - the only import beyond ComfyUI's own modules is comfy.samplers.

    cd ComfyUI/custom_nodes
    git clone https://github.com/jurdnf/ComfyUI-JurdnsMetadataNodes
    

    Restart ComfyUI and it appears under "Jurdns" → sampling. It's a small single-author pack, but for the narrow job of keeping your sampler settings and your saved metadata in one place, it's tidy.

    CategoryJurdns/sampling

    Inputs (8)

    NameTypeDefaultDescription
    positive_promptSTRING
    negative_promptSTRING
    sampler_nameCOMBOeuler44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
    schedulerCOMBOnormal9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
    stepsINT201–10000
    cfgFLOAT8.00–100
    denoiseFLOAT1.000–1
    seedINT00–18446744073709550000

    Outputs (10)

    NameTypeDescription
    positive_promptSTRING
    negative_promptSTRING
    sampler_for_ksamplereuler,euler_cfg_pp,euler_ancestral,euler_ancestral_cfg_pp,heun,heunpp2,exp_heun_2_x0,exp_heun_2_x0_sde,dpm_2,dpm_2_ancestral,lms,dpm_fast,dpm_adaptive,dpmpp_2s_ancestral,dpmpp_2s_ancestral_cfg_pp,dpmpp_sde,dpmpp_sde_gpu,dpmpp_2m,dpmpp_2m_cfg_pp,dpmpp_2m_sde,dpmpp_2m_sde_gpu,dpmpp_2m_sde_heun,dpmpp_2m_sde_heun_gpu,dpmpp_3m_sde,dpmpp_3m_sde_gpu,ddpm,lcm,ipndm,ipndm_v,deis,res_multistep,res_multistep_cfg_pp,res_multistep_ancestral,res_multistep_ancestral_cfg_pp,gradient_estimation,gradient_estimation_cfg_pp,er_sde,seeds_2,seeds_3,sa_solver,sa_solver_pece,ddim,uni_pc,uni_pc_bh2
    scheduler_for_ksamplersimple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimal
    sampler_for_metadataSTRING
    scheduler_for_metadataSTRING
    stepsINT
    cfgFLOAT
    denoiseFLOAT
    seedINT