On this page
On this page
Providers
Kie AI
OpenClaw includes the bundled kie plugin, enabled by default, for
Kie AI video generation.
| Property | Value |
|---|---|
| Provider id | kie |
| Auth env var | KIE_API_KEY |
| Onboarding flag | --auth-choice kie-api-key |
| Direct CLI flag | --kie-api-key <key> |
| Base URL | https://api.kie.ai |
| Default model | kie/kling-2.6/text-to-video |
Setup
Run onboarding or set the environment variable:
openclaw onboard --auth-choice kie-api-keyexport KIE_API_KEY="example-kie-key-not-real"Video generation
Kie supports text-to-video and image-to-video, with one video per request.
Choose a model using its full kie/<model> reference:
| Family | Text-to-video model | Image-to-video model |
|---|---|---|
| Grok Imagine | grok-imagine/text-to-video |
grok-imagine/image-to-video |
| Hailuo 02 | hailuo/02-text-to-video-standard |
hailuo/02-image-to-video-standard |
| Hailuo 02 Pro | hailuo/02-text-to-video-pro |
hailuo/02-image-to-video-pro |
| Hailuo 2.3 | - | hailuo/2-3-image-to-video-standard |
| Hailuo 2.3 Pro | - | hailuo/2-3-image-to-video-pro |
| Kling 2.6 | kling-2.6/text-to-video (default) |
kling-2.6/image-to-video |
| Seedance 1.5 Pro | bytedance/seedance-1.5-pro |
bytedance/seedance-1.5-pro |
| Wan 2.6 | wan/2-6-text-to-video |
wan/2-6-image-to-video |
For paired models, adding one reference image automatically switches to the matching image-to-video model; omitting it selects the text-to-video model. Hailuo 2.3 models always require an image. Seedance uses the same model id for both modes.
| Family | Duration (seconds) | Resolution controls | Audio toggle |
|---|---|---|---|
| Grok Imagine | 6–30 | 480P, 720P, 1080P |
No |
| Hailuo 02 | 6 or 10 | Image mode: 512P, 768P |
No |
| Hailuo 02 Pro | Provider-managed | Provider-managed | No |
| Hailuo 2.3 / Pro | 6 or 10 | 768P, 1080P (1080P requires 6 seconds) |
No |
| Kling 2.6 | 5 or 10 | Provider-managed | Yes |
| Seedance 1.5 Pro | 4–12 | 480P, 720P, 1080P |
Yes |
| Wan 2.6 | 5, 10, or 15 | 720P, 1080P |
No |
Aspect-ratio controls are available for text-only Kling and Grok models,
and both Seedance modes. Run video_generate action=list for the model's
supported controls. Kling and Seedance default to no generated audio.
Reference images can be remote HTTP(S) URLs or local files. OpenClaw uploads local images through Kie's base64 file upload API and passes the returned URL to generation. This initial plugin supports one image up to 10 MB: JPEG or PNG for Kling; JPEG, PNG, or WebP for the other models. Video-to-video and audio reference inputs are not supported.
Set the default video model:
{ agents: { defaults: { mediaModels: { video: { primary: "kie/kling-2.6/text-to-video", }, }, }, },}Kie jobs can take several minutes. OpenClaw polls until completion and
waits up to ten minutes by default. Override this with
agents.defaults.mediaModels.video.timeoutMs when needed. Provider error
messages are surfaced even when Kie returns HTTP 200.
Veo is not included yet; its dedicated and market API contracts need to be reconciled before support is added.
Live testing
The shared video smoke supports Kie. Allow time for the provider queue:
OPENCLAW_LIVE_VIDEO_GENERATION_TIMEOUT_MS=600000 \ pnpm test:live:media video --video-providers kieSet OPENCLAW_LIVE_VIDEO_GENERATION_FULL_MODES=1 to also exercise local
image upload and image-to-video generation.