wan / v2.2 / comfy
Full sampler control on Civitai's cloud
- source_image
- loras
- model
- images
- api_config
- video
- workflow_id
- raw_json
This is the node for people who feel naked without a sampler dropdown. It runs Wan 2.2 - the quality-first release that took over local video - on Civitai's cloud through a ComfyUI-style engine, and it hands you the knobs a local KSampler has: 18 samplers, 7 schedulers, steps, CFG, and a shift parameter. Prompt in, native VIDEO out, billed in Buzz. It's the most "this is just ComfyUI, but somebody else's GPU" node in the official civitai-comfy-nodes pack.
If you've run Wan 2.2 locally, this node needs almost no translation - it's the same mental model with the local loaders swapped for Civitai's. If you haven't, the practical truth is you can leave nearly every knob alone and still get good clips; the "comfy" engine exists so power users feel at home, not because defaults are broken.
The inputs that matter
prompt and cfg_scale (default 4) are required. Then:
sampler- 18 choices, defaulteuler. The full ComfyUI roster:euler,euler_ancestral,heun,heunpp2,dpm_2,dpm_2_ancestral,lms,dpm_fast,dpm_adaptive,dpmpp_2s_ancestral,dpmpp_sde,dpmpp_2m,dpmpp_2m_sde,dpmpp_3m_sde,ddpm,lcm,uni_pc,uni_pc_bh2.euleris the Wan community's default for good reason; don't migrate tolcmoruni_pcunless you know why.scheduler-normal,karras,exponential,sgm_uniform,simple,ddim_uniform,beta, defaultsimple.shift- 1.0 to 20.0, default 8.0. This is the Wan-specific training-shift parameter; it controls where the model spends its denoising effort. Leave it at 8 unless you're tuning deliberately.width/height- default 1280×720, min 64, max 2048. Set the exact frame you want.steps- 10 to 50, default 20.model- aCIVITAI_AIRsocket from the Civitai Model Selector, so you can run a specific Wan 2.2 checkpoint instead of the platform default.loras-CIVITAI_LORASsocket; trigger words go in theprompt(the selector's keywords field is just a reminder).source_image/images- image-to-video inputs.negative_prompt- worth using here, since you have full CFG control.duration1–30s (default 5),frame_rate24,seed,api_config.
Outputs
Standard trio: video (VIDEO) into a Save Video / preview node, workflow_id (STRING) for sidebar tracking, raw_json (STRING) for response and cost.
Install and auth
One-time pack setup. ComfyUI Manager → search Civitai Comfy Nodes → install, restart:
cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt # just `requests`
Auth: Civitai Auth node, CIVITAI_API_TOKEN (headless), or sidebar sign-in.
Troubleshooting and takes
- The
modelsocket won't fill. It's not a text widget - wire the Civitai Model Selector'sairoutput into it. Same pattern as every CIVITAI_AIR/CIVITAI_LORAS socket in the pack. - Sampler rabbit holes. With a cloud meter running, every experiment costs money. Wan 2.2 is a two-pass architecture and its sampler behavior doesn't mirror SD 1.5 habits; stick with
euler/simpleand tunestepsandshiftbefore blaming the sampler. - High resolution = long queue. 2048px is legal here, but this pack launched June 2026 during Civitai's GPU crunch - big frames plus busy queues is the timeout recipe. Default timeout 30 min; raise via Civitai Auth
timeout_minutesorCIVITAI_COMFY_TIMEOUT. - Negative prompt does nothing sometimes. If your negatives seem ignored, remember the model's content filter runs server-side regardless - that's Civitai's layer, not the CFG.
- Early preview. Generated nodes "may change without notice"; re-check the sampler list after updates.
Reach for this node when you want Wan 2.2 quality and the feel of driving the sampler yourself. If you'd rather not think about samplers at all, the fal-hosted Wan 2.2 nodes give you the same model with far fewer dials.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| cfg_scale | FLOAT | 4.000–100 | — |
| source_imageopt | IMAGE | Either A URL, A DataURL or a Base64 string | |
| frame_rateopt | INT | 240–2147483647 | — |
| durationopt | INT | 51–30 | — |
| seedopt | INT | 00–4294967295 | — |
| stepsopt | INT | 2010–50 | — |
| lorasopt | CIVITAI_LORAS | — | |
| widthopt | INT | 128064–2048 | — |
| heightopt | INT | 72064–2048 | — |
| modelopt | CIVITAI_AIR | — | |
| imagesopt | IMAGE | — | |
| negative_promptopt | STRING | — | |
| sampleropt | COMBO | euler | 18 options: euler, euler_ancestral, heun, heunpp2, dpm_2, dpm_2_ancestral, +12 |
| scheduleropt | COMBO | simple | 7 options: normal, karras, exponential, sgm_uniform, simple, ddim_uniform, +1 |
| shiftopt | FLOAT | 8.001–20 | — |
| api_configopt | CIVITAI_CONFIG | Optional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| workflow_id | STRING | — |
| raw_json | STRING | — |