Nodes/EasySettingpipes/SamplerSetup
ComfyUI Node

SamplerSetup

One node to hold every KSampler dial, so your graph stops sprawling

By hayde0096·Created about a year ago·Updated 8 months ago· 1
SamplerSetup
    • setup_pipe
    steps20
    cfg7.0
    clip_skip-1
    sampler_name
    scheduler
    width1024
    height1024
    swap_whfalse
    batch_size1

    SamplerSetup exists to stop a KSampler from dragging its whole control panel across your canvas. A stock KSampler node carries steps, cfg, sampler, scheduler, denoise and more as widgets, and when you've got three samplers in one workflow you're reaching across the graph to change the same number three times. This node bundles those dials - steps, cfg, clip_skip, sampler, scheduler, width, height, batch size - into one place and sends them down a single setup_pipe connection. It's the "pipe" pattern made popular by Efficiency Nodes and rgthree-style Context nodes: a bundle of settings travels on one wire instead of eight.

    How it works

    build_pipe is boring on purpose. It validates your sampler_name and scheduler against ComfyUI's own lists (if you feed it something that isn't a real sampler, it falls back to euler rather than crashing), and packs everything into a dict that rides the setup_pipe output. That's the whole mechanism - no magic, just a tidy data structure. The one bit of real logic is swap_wh: tick the box and width and height swap before anything leaves the node, which is a handy one-click flip when you're farming portrait versus landscape compositions.

    The inputs that matter

    • steps (default 20) and cfg (default 7.0) - your bread and butter. Steps range a generous -1000 to 1000; cfg goes negative if you're feeling chaotic.
    • clip_skip (default -1, meaning no skip). Set to -2 for anime-lineage checkpoints that expect it - the Illustrious/Pony/NoobAI family, per the KB. The default of -1 means "don't skip," which matches stock ComfyUI behavior.
    • sampler_name and scheduler - populated from ComfyUI's real lists, so every sampler ComfyUI knows is in the dropdown (44 samplers including the newer _cfg_pp and seeds_2/seeds_3 entries, 9 schedulers). These are the same lists a KSampler uses, which is what makes the values round-trip cleanly.
    • width and height (default 1024, stepping by 16), and batch_size (default 1).

    The only output is setup_pipe, and here's where the pack's README oversells: it shows [SamplerSetup] → setup_pipe → [KSampler] as if the pipe plugs straight into a stock KSampler. It doesn't. A SETUPPIPE wire won't connect to KSampler's steps socket - the types don't match. To get from this node into a real sampler, you route through the pack's SamplerSetupUnpack, which splits the pipe back into individual outputs that a KSampler will happily eat. (If a future pack adds KSampler-style nodes that accept SETUPPIPE directly, this becomes a true one-wire drop; today it's a tidy collector, not a replacement for the unpack step.)

    Installing it

    cd ComfyUI/custom_nodes
    git clone https://github.com/hayde0096/Comfyui-EasySettingpipes
    

    Restart ComfyUI, or search "Easy Setting Pipes" in ComfyUI Manager. No dependencies beyond ComfyUI itself and no model files. Minor README trap: the manual-install clone URL in the docs is a broken user-attachments path - use the repo URL above.

    Where people get burned

    • The pipe isn't magic. If you pack settings here and expect a stock sampler to read them, you'll stare at a wire that refuses to connect. SamplerSetup is the front half; SamplerSetupUnpack is the back half. Don't skip it.
    • Swap is baked in, not live. swap_wh swaps width and height at build time, so the pipe holds the swapped values. Toggle it off and the original dimensions come back - it doesn't re-swap an already-swapped pipe.
    • Sampler/scheduler sanity is yours to own. This node validates that values are known samplers, not that they're good ones. The KB's sampler guidance is worth a glance: for SD 1.5/SDXL, DPM++ 2M Karras at 20-30 steps is the safe default; on flow-matching models Karras is often actively wrong. A bundle of settings won't save you from a bad sampler - it just makes it consistent.
    Categoryeasy setting

    Inputs (9)

    NameTypeDefaultDescription
    stepsINT20-1000–1000
    cfgFLOAT7.0-100–100
    clip_skipINT-1-100–100
    sampler_nameCOMBO44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
    schedulerCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
    widthINT102432–8192
    heightINT102432–8192
    swap_whBOOLEANfalse
    batch_sizeINT11–128

    Outputs (1)

    NameTypeDescription
    setup_pipeSETUPPIPE