NS WaveSpeed Wan 2.5 Image Edit
Take a picture, change what's in it, keep the rest
- client
- output_image
Text-to-image gives you a whole new picture. Image edit gives you your picture, changed in exactly the places you asked for. NSWaveSpeedWan25ImageEdit from symbiotica-ai/comfyui-nodes is the Wan 2.5 edit route: one required reference image, a prompt describing the adjustment, and an edited IMAGE back - "replace the vase with a lamp, keep the lighting" works the way you hope it does. And because Wan 2.5 was never open-sourced, this hosted call is effectively the only way to get Wan 2.5 editing inside ComfyUI at all.
How it works
Your reference goes in as a URL string from ComfyUI's Upload Image node. The node POSTs to WaveSpeed (/api/v3/alibaba/wan-2.5/image-edit) with your prompt, output size, and seed, then downloads the edited image back into a normal IMAGE tensor. image_2 is optional and is for multi-image editing - feeding a second reference that Wan can consult while editing. enable_sync_mode defaults on for this node (submit-and-block rather than the async polling most of the pack uses), and seed defaults to -1 (random).
The size menu is where this node flexes. Eleven presets run from 1024x1024 up to HD variants (1936x1089, 1672x1254), and there's a Custom option that unlocks custom_width / custom_height (384–5000px, stepped in multiples of 8) - the only node in the family with free-form output dimensions. If you need a specific canvas, that's your input.
The inputs that matter
image_1(required) - the picture to edit, as a URL.prompt- the adjustment, positively phrased.size- one of the 11 presets, or Custom withcustom_width/custom_height.image_2(optional) - a second reference for multi-image edits.client- theWAVESPEED_AI_API_CLIENTsocket from the NS WaveSpeed Client node.
Output: output_image (IMAGE) - into a preview or Save Image.
Install and keys
# ComfyUI Manager: search "Symbiotica", or:
cd ComfyUI/custom_nodes
git clone https://github.com/symbiotica-ai/comfyui-nodes.git symbiotica
pip install -r symbiotica/requirements.txt
Restart, add the NS WaveSpeed Client node with your wavespeed.ai key (widget, Settings → Symbiotica, or WAVESPEED_API_KEY), wire client in. No model files.
Common issues
"API_KEY is empty" means the client node. Every WaveSpeed node in the pack takes its key from the NS WaveSpeed Client node - if you see that error, that wire is missing.
Custom dimensions have rules. The sliders are 384–5000 and step by 8; the API wants multiples of 8, so a random number you type gets normalized or rejected. And remember, this is a hosted edit - your reference image leaves your machine, and Alibaba's moderation applies to the whole pipeline (external-api-nodes.md).
Same local-2.5 trap as the rest of the family. No open Wan 2.5 weights exist; if someone tells you to just run it locally, they're describing Wan 2.2 (wan-video.md). This node is the price of the 2.5 quality jump - metered, per image.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| client | WAVESPEED_AI_API_CLIENT | — | |
| prompt | STRING | Positive prompt describing desired adjustments to the image | |
| image_1 | STRING | First input image URL (required - connect from Upload Image node) | |
| size | COMBO | 1024x1024 (1:1) | The output resolution and aspect ratio |
| seed | INT | -1-1–2147483647 | Random seed for reproducible results. -1 for random seed |
| enable_sync_mode | BOOLEAN | true | Wait for generation to complete before returning |
| image_2opt | STRING | Second input image URL (optional - for multi-image editing) | |
| custom_widthopt | INT | 1024384–5000 | Custom width (384-5000px, used when Custom is selected) |
| custom_heightopt | INT | 1024384–5000 | Custom height (384-5000px, used when Custom is selected) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| output_image | IMAGE | — |