Kling IMAGE 3.0
Kuaishou's image model, on your ComfyUI canvas
- referenceImages
- advancedFeatures.watermark.image
- image
Kling IMAGE 3.0 is Kuaishou's text-to-image model - the same house that made Kling video - and this node drops it into ComfyUI with a single required input and no GPU of your own involved. Unlike the video nodes, the output is a plain IMAGE tensor, so it plugs straight into the ComfyUI image world you already know: preview, save, pass it along as the first frame of a Kling video node, whatever you like.
Why you'd reach for it
The closed-image-model problem, solved the same way the pack solves everything: run it on Runware's cloud. Kling IMAGE is API-only, no weights, and its quality is genuinely competitive with the big cloud image models. The neat move is workflow continuity - you can generate here, then wire the IMAGE output directly into a Kling video node's frameImages and animate it, all in one graph. That's the pipeline this node exists for.
How it works
Standard generated-node machinery: positivePrompt is required, and any optional referenceImages tensor is base64'd to PNG data URIs. The request rides to the Runware REST API via the runware SDK and returns a native IMAGE tensor (not a file path - a real ComfyUI image). Cost and NSFW flag print on the node title bar. Image nodes are also the cheap end of Runware's pricing, so this is a friendly way to test the pack.
Inputs that matter
positivePrompt- required.referenceImages(IMAGE) - optional. Feed one or more images and you're doing image-guided generation (reference, style, edit) instead of pure T2I.size- the resolution picker: presets from1k/2k (from input)when you've wired references, through the whole 1K/2K aspect-ratio grid (1:1, 3:2, 2:3, 4:3, 9:16, 16:9, 21:9).numberResults(1–20!) - this one rolls up to 20 variations per run, which is generous for a paid API; remember each one costs.outputFormat(JPG/PNG/WEBP),outputQuality(95).watermark- an optional typed watermark input if you want one stamped in.safetygroup - content-check toggles (off = model default).
Output: one image socket (IMAGE type).
Install and the API key
cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt
Restart ComfyUI (or Runware via ComfyUI Manager). Key from the Runware dashboard → Settings → Runware API key, RUNWARE_API_KEY, or runware auth login.
Gotchas
referenceImageswants tensors from Load Image - a file path or URL string will error.- Watch
numberResults: 20 variations is a real bill. It's there for batch work, not for curiosity. - Closed model, per-run pricing: Kuaishou's weights rented by the request, cost shown on the node.
sizeand any width/height-style inputs are mutually exclusive - the dropdown owns the resolution, so set it there, not on hidden widgets.
Kling IMAGE 3.0 is the gateway node of the pack: cheap, fast, and the natural first frame for everything else Kling does. If you're going to animate a Kling video, starting here is the intended loop.
Inputs (18)
| Name | Type | Default | Description |
|---|---|---|---|
| positivePrompt | STRING | Text prompt describing elements to include in the generated output. | |
| referenceImagesopt | IMAGE | — | |
| advancedFeatures.watermark.imageopt | IMAGE | — | |
| sizeopt | COMBO | 1K (1:1) | Output size. Only one of resolution or dimensions is sent. |
| numberResultsopt | INT | 11–20 | Number of results to generate. Each result uses a different seed, producing variations of the same parameters. |
| advancedFeaturesopt | BOOLEAN | false | Enable to set advancedFeatures. Off uses the model's default. |
| advancedFeatures.watermark.bgColoropt | STRING | Background color in hex format. | |
| advancedFeatures.watermark.displayPositionopt | COMBO | (default) | Watermark position. |
| advancedFeatures.watermark.fontColoropt | STRING | Text color in hex format. | |
| advancedFeatures.watermark.opacityopt | BOOLEAN | false | Enable to set advancedFeatures.watermark.opacity. Off uses the model's default. |
| advancedFeatures.watermark.opacity_valueopt | FLOAT | 0.100.1–1 | Watermark opacity. |
| advancedFeatures.watermark.textopt | STRING | Watermark text. | |
| safetyopt | BOOLEAN | false | Enable to set safety. Off uses the model's default. |
| safety.checkContentopt | BOOLEAN | false | Enable or disable content safety checking. |
| ttlopt | BOOLEAN | false | Enable to set ttl. Off uses the model's default. |
| ttl_valueopt | INT | 60 | Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`. |
| outputFormatopt | COMBO | JPG | File format for the generated image. |
| outputQualityopt | INT | 9520–99 | Compression quality of the output. Higher values preserve quality but increase file size. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |