Nodes/civitai-comfy-nodes/wan / v2.5 / fal / image-to-image
ComfyUI Node

wan / v2.5 / fal / image-to-image

Wan 2.5 image-to-image — closed weights, open-ended editing

By civitai·Created 2 months ago·Updated about a month ago· 42
wan / v2.5 / fal / image-to-image
  • loras
  • images
  • api_config
  • images
  • errors
  • workflow_id
  • raw_json
prompt
output_format
image_metadata
negative_prompt
guidance_scale3.50
seed0
quantity1
image_sizesquare_hd
enable_prompt_expansionfalse
enable_safety_checkerfalse

Wan's still-image editing is its hidden superpower - the video-training heritage gives the model a real sense of 3D space, so image-to-image edits keep perspective and lighting intact in a way that frustrates pure image models. This node is the image-to-image variant of the cloud-only Wan 2.5 recipe: feed it a prompt and an image, get a reworked image back. And because Wan 2.5 has no open weights, this is the only way to run that specific model's editing locally-in-graph at all.

How it works

Same machinery as every recipe node in the Civitai pack - prompt and image go up to the Civitai Orchestration API, the job runs on the fal engine, and the result returns as a native IMAGE. What's different from the sibling text-to-image node is the images input: an IMAGE socket you feed your source picture into (from a Load Image node, or another generator's output). The image is the canvas; your prompt is the instruction. Wan's i2i leans on the two-pass architecture's spatial understanding, which is why it holds structure better than you'd expect from a video model's side hustle.

Inputs and outputs

  • prompt (required) - the edit instruction, in natural language ("make it night, add rain").
  • images - the reference image. This one's an optional input on the schema, but it's the whole point of the node; a Wan i2i run with no image is just a worse text-to-image run.
  • guidance_scale - 3.5 default; lower it if edits drift too far, raise it if the model ignores you.
  • image_size - preset string (square_hd); note the output size doesn't have to match your input's aspect ratio.
  • enable_prompt_expansion, enable_safety_checker, loras, negative_prompt, seed, quantity (up to 12), output_format, image_metadata.

Outputs: images (IMAGE), errors, workflow_id, raw_json.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt

Or ComfyUI Manager → "Civitai Comfy Nodes" → Install → restart. Authenticate (CIVITAI_API_TOKEN or sidebar), jobs bill in Buzz.

Gotchas

The data-flow caveat is the one to actually hear: your reference image leaves the machine and is processed on Civitai's servers, subject to their moderation. Cloud i2i is where "your inputs go to a server you don't control" stops being abstract - the image you feed in is exactly the kind of thing that can get filtered or refused. For SFW editing, fine. For anything you'd rather keep private, this node isn't the tool, and no local Wan 2.5 exists to fall back on.

Also: this is a cloud i2i, so expect queue time, and expect the closed recipe to hide the sampler internals - you get guidance_scale, not step control. And the community read on 2.5 was "an upgrade to 2.2," not a revolution, so don't expect magic over the open 2.2 i2i nodes you could run locally with patience. Use it when you specifically want 2.5's editing or you don't have the card for 2.2.

CategoryCivitai/Image/wan

Inputs (13)

NameTypeDefaultDescription
promptSTRING
output_formatoptCOMBO4 options: , jpeg, png, webP
image_metadataoptSTRINGExternal metadata that will be stored with the image
negative_promptoptSTRING
guidance_scaleoptFLOAT3.501–10
seedoptINT00–4294967295
quantityoptINT11–10
image_sizeoptSTRINGsquare_hd
enable_prompt_expansionoptBOOLEANfalse
enable_safety_checkeroptBOOLEANfalse
lorasoptCIVITAI_LORAS
imagesoptIMAGE
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (4)

NameTypeDescription
imagesIMAGE
errorsSTRING
workflow_idSTRING
raw_jsonSTRING