Kling 3.0 Omni Text to Video
Multi-shot planning, and the toggle pair you must not set both of
- video
- url
- all_urls_json
- task_id
- raw_json
- credits_consumed
- credits_left
The pitch
Most text-to-video nodes give you one prompt and one shot. This one will cut. You write a scene, tell it whether you want a single continuous shot, a machine-planned sequence of shots, or a shot list you wrote yourself - and it comes back as an edited-feeling clip with audio and up to 4K output.
Kling 3.0 Omni is Kuaishou's omnimodal tier, and unlike most of its siblings in this folder, this node has a full set of widgets. It's the closest thing in the pack to a proper director's console. KIE_Next_kling_3_0_omni_text_to_video_b4cce597, under KIE Next / Video / Kling.
As always with this family: closed model, no weights, so the call goes out. Here it goes to KIE.ai - a third-party reseller with its own key and credits, not Comfy's official Partner Nodes. KIE is also the vendor that kept showing up as the cheap Nano Banana route in 2026, so the account is one you may already have.
Multi-shot, or: the mutually exclusive pair
Two booleans decide the whole shape of the output, and the documentation is explicit that they cannot both be true:
- customize_multi_shots - you supply the shots yourself. Default
true, which is a trap-ish default: when it's on,multi_promptbecomes required, must not be empty, and supports up to six shots. - prefer_multi_shots - the model plans the shot breakdown itself. Set this
trueand turncustomize_multi_shotsoff. - Single continuous shot? Both
false.
Both false is legal. Both true is a rejected request - and the node doesn't stop you locally, so you'll wear the error from the provider. This is the single most likely reason your first run fails, so set the pair deliberately before you hit generate.
The rest of the controls
- prompt - required, up to 3072 characters. With
customize_multi_shotson, this is the scene; the shot list carries the beats. - multi_prompt - JSON array of your shots, up to six. This is where manual multi-shot earns its keep: precise cuts in a specific order.
- elements - JSON array of reusable subject assets (the one-time subject assets KIE documents: up to seven image subjects, up to three video-character subjects, with caps when you mix both). If you have a character you want held across shots, this is the hook.
- audio - off by default. Turn it on for sound in the render.
- resolution -
720p,1080p,4k. Real 4K is on the menu and priced accordingly; this same family was being called "ludicrously expensive" on r/StableDiffusion at ~$1.50 for a 5-second 1080p clip, so treat 4K as a finishing pass, not a preview setting. - aspect_ratio -
16:9,9:16,1:1. - duration - 3 to 15 seconds, default 5.
- timeout_seconds - 1200 seconds. For 4K or a 15-second multi-shot render, raise it rather than re-queueing.
Mechanism, briefly
The node builds {"model": "kling-3.0-omni/text-to-video", "input": {...}}, POSTs to KIE's createTask, polls recordInfo with a growing interval (2.5s → 15s cap) until the task reports success, downloads the MP4 to output/KIE-Results/videos/ and wraps it as a native ComfyUI VIDEO. Everything is blocking - the node is a slow synchronous call wearing a graph node's clothes, which is why the timeout widget exists at all.
Outputs
video for the graph. url for the hosted file, all_urls_json for the raw list, task_id for support, raw_json for the provider's own explanation of a failure, credits_consumed and credits_left for the bill (printed on the node after each run too; -1 means the balance lookup failed, not that the job did). Scene edits are where these budgets quietly disappear, so watch that receipt for your first few multi-shot runs.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
Restart, then Settings → KIE.ai Nodes Next → Connection and paste your KIE key - validated before it replaces anything, masked afterwards, with a ✅ CONNECTED row and your balance. KIE_API_KEY in the environment still works for servers and takes priority. Dependencies are just requests, Pillow, numpy, PyYAML; no ffmpeg stages, no extra model downloads. ComfyUI Manager install works if the pack shows up in the registry, and the repo has a ZIP plus a one-click Windows installer in dist/.
Traps, in order of how often they'll get you
- Both multi-shot booleans true. Rejected. Read the two tooltips again.
customize_multi_shots=truewith an emptymulti_prompt. Also rejected, by design.- Malformed JSON in
multi_promptorelements. The node parses these locally and throws a clear "must contain valid JSON" error, which is a favour - you find out before spending credits. - Clicking generate four times on one shot. Each click is a separate paid task. The poller is patient; trust
timeout_seconds. - A fresh install with no node in the menu. The pack builds its model nodes from KIE's documentation index at startup and re-syncs roughly daily. A restart and a minute usually fixes it.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Text description of the video. It must not be empty after leading and trailing whitespace is removed, and must not exceed 3,072 characters. | |
| durationopt | COMBO | 5 | Total video duration in seconds. The supported range is 3 to 15 seconds, and the default is 5 seconds. |
| resolutionopt | COMBO | 720p | Resolution of the generated video. Available values are `720p` (outputs a 720p video), `1080p` (outputs a 1080p video), and `4k` (outputs a 4K video). |
| aspect_ratioopt | COMBO | 16:9 | Aspect ratio of the generated video. Supported values are `16:9`, `9:16`, and `1:1`. |
| multi_promptopt | STRING | [] | List of custom shots. When `customize_multi_shots` is `true`, this field is required, must not be empty, and supports up to 6 shots. When `customize_multi_shots` is `false`, it must be an empty array or omitted. |
| elementsopt | STRING | [] | List of one-time subject assets. The default is an empty array. When using only multi-image subjects, up to 7 subjects can be uploaded. When using only video character subjects, the number of video character subjects must not exceed 3. When using both video character and multi-image subjects, the number of video character subjects must not exceed 3, and the number of multi-image subjects must not exceed 4. |
| audioopt | BOOLEAN | false | Whether to add audio to the generated video. `true` enables audio; `false` disables audio. |
| customize_multi_shotsopt | BOOLEAN | true | Whether to enable multi-shot mode. Explicitly specifying this value is recommended. `true` enables multiple shots; `false` uses a single shot. |
| prefer_multi_shotsopt | BOOLEAN | true | Whether to enable intelligent shot planning. This field is mutually exclusive with `customize_multi_shots`. Both fields may be `false`, but they cannot both be `true`. |
| timeout_secondsopt | INT | 120030–7200 | — |
| callback_urlopt | STRING | Optional KIE callback URL. Leave empty for normal ComfyUI use. |
Outputs (7)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| url | STRING | — |
| all_urls_json | STRING | — |
| task_id | STRING | — |
| raw_json | STRING | — |
| credits_consumed | FLOAT | — |
| credits_left | FLOAT | — |