Ksampler Sampler Arg (watdafox)
The sampler dropdown you can finally wire into other nodes
- sampler_name
- str_sampler_name
Pick any of the 44 samplers ComfyUI knows about in one dropdown, and get both a typed value to feed a KSampler and a plain string version for everything else. That's the whole job of Ksampler Sampler Arg, and it's more useful than it sounds once you've hit the wall that motivates it.
The wall: a KSampler's sampler field is a dropdown locked inside that node. You can't read which sampler a workflow used, you can't save it to the metadata of your output image, and if you want to try dpmpp_2m_sde across three samplers you're editing three widgets by hand. This node turns that decision into a value that travels on a wire. Same idea as the pack's scheduler and detailer-scheduler variants - a "pick once, use everywhere, log always" pattern.
How it works
Straight passthrough, no smoke. The required sampler_name combo is populated from comfy.samplers.KSampler.SAMPLERS, so it always reflects your ComfyUI version - if a new sampler shows up after an update, it shows up here too. The node returns (sampler_name, str_sampler_name): the first output is the enum value KSampler's sampler input expects, the second is the identical text as a STRING. The execute body is literally return (sampler_name, sampler_name). No hidden state, no randomness, nothing to misconfigure.
What you actually touch
sampler_name- the combo. Contains everything fromeuleranddpmpp_2mthrough thecfg_pp-flavored variants anduni_pc_bh2that newer ComfyUI builds ship.- Outputs
sampler_name→ wire into a KSampler'ssamplerinput.str_sampler_name→ feed a text display or embed it in saved metadata.
It sits under watdafox/parameter. Pair it with Ksampler Scheduler Arg and the Detailer Scheduler Arg and you've got all three sampling knobs as first-class graph values.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/OhSeongHyeon/comfyui-watdafox-nodes.git
Restart ComfyUI, or install via ComfyUI Manager (search "comfyui-watdafox-nodes"). Zero extra dependencies, zero model downloads - the pack imports only what base ComfyUI ships.
The honest caveat
If your workflow has one KSampler and you never care what sampler a saved image used, this is overhead you don't need - ComfyUI's stock dropdown does the same job. It earns its place in multi-sampler workflows and anywhere you want run logging. That's a narrower niche than the pack's README makes it sound, but when you're in that niche it's exactly right.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| sampler_name | COMBO | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| sampler_name | euler,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 | — |
| str_sampler_name | STRING | — |