Install
openclaw skills install @permew/video-edit-runcomfyVideo edit on RunComfy. This video edit skill transforms an existing video clip — restyle, background swap, outfit swap, motion transfer, color grade, or any other video edit task — by routing the video edit request to the right model in the RunComfy catalog. Video edit supports talking-head video edit, product video edit, and short-form video edit at up to 1080p. Calls runcomfy run <model>/edit-video through the local RunComfy CLI. Triggers on "video edit", "edit video", "video editing", "video-edit", "restyle video", "swap video background", "video outfit swap", "video color grade", or any explicit ask to edit a video.
openclaw skills install @permew/video-edit-runcomfyruncomfy.com · docs · Video edit models
Video edit on RunComfy. This skill is the canonical video edit entry point for the RunComfy Model API: give it a source video URL and an edit instruction, and it returns the edited video. Video edit on RunComfy means transforming an existing clip — restyle, background swap, outfit swap, motion transfer, color grade — without re-shooting.
Video edit is the task of taking a source video and producing a transformed video that preserves identity, motion, or framing where you want, while changing what you specify. Video edit is distinct from text-to-video (no input clip) and from image-to-video (input is a still). Common video edit operations include:
This skill picks the right video edit endpoint for the user's intent and calls runcomfy run <model>/<edit-endpoint> with the matching schema.
Pick video edit on RunComfy whenever:
If the user said "video edit", "edit video", "restyle this video", "swap the background", "change the outfit", "transfer this motion", "color grade this clip", or showed a video and asked to transform it — route here.
| User intent | Video edit model | Why |
|---|---|---|
| Default video edit — restyle, background swap, color grade, packaging swap | wan-ai/wan-2-7/edit-video | Most versatile video edit model; identity + motion preservation, up to 1080p video edit output |
| Motion-transfer video edit (transfer motion from a reference clip) | kling/kling-2-6/motion-control-pro | Designed for motion-mapping video edit with identity hold |
| Lightweight outfit-swap / atmospheric restyle video edit | decart/lucy-edit/restyle | Fastest video edit pass for localized style changes; 720p |
The agent reads this table, classifies the user's video edit intent, and picks the matching endpoint.
npm i -g @runcomfy/cliruncomfy login.RUNCOMFY_TOKEN=<token>.The default video edit endpoint. Use for any general video edit task: restyle a talking-head video, swap a product background, replace packaging design with a reference image, apply a cinematic color grade. Up to 1080p video edit output.
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt | string | yes | — | Video edit instruction. Lead with preservation goals, then state the change. |
video | string | yes | — | Source video URL for video edit. MP4/MOV, 2–10s, ≤100MB. |
reference_image | string | no | — | Optional reference for design-transfer video edit (e.g. packaging swap). |
resolution | enum | no | (input) | 720p or 1080p for the video edit output. |
aspect_ratio | enum | no | (input) | W:H. Defaults to source video aspect. |
duration | int | no | 0 | 0 = match input; 2–10 truncates the video edit from the start. |
audio_setting | enum | no | auto | auto regenerates audio; origin preserves source audio in the video edit output. |
seed | int | no | — | Reproducibility for video edit variants. |
Background swap video edit, identity preserved, audio kept:
runcomfy run wan-ai/wan-2-7/edit-video \
--input '{
"prompt": "Preserve the speaker'\''s face, pose, and lip movement; change the background to a modern office with neutral lighting.",
"video": "https://.../speaker.mp4",
"audio_setting": "origin"
}' \
--output-dir <absolute/path>
Packaging-swap video edit with reference image:
runcomfy run wan-ai/wan-2-7/edit-video \
--input '{
"prompt": "Maintain the original framing and hand movement; replace the packaging design using the reference image.",
"video": "https://.../hand-holding-package.mp4",
"reference_image": "https://.../new-packaging.png",
"audio_setting": "origin"
}' \
--output-dir <absolute/path>
Use when the video edit transfers motion from a reference clip onto a target character. This isn't restyle video edit — it's motion-mapping video edit with identity hold.
| Field | Type | Required | Notes |
|---|---|---|---|
prompt | string | yes | Describe the target motion / style for the video edit output. |
image | string | yes (image orientation) | Reference for character / background consistency in the video edit. |
video | string | yes | Motion-reference clip for the video edit. 10–30s depending on orientation. |
keep_original_sound | bool | no | Preserve audio from the reference video edit input. |
character_orientation | enum | yes | image (max 10s video edit output) or video (max 30s). |
runcomfy run kling/kling-2-6/motion-control-pro \
--input '{
"prompt": "A young american woman dancing",
"image": "https://.../target-character.jpg",
"video": "https://.../motion-reference-dance.mp4",
"character_orientation": "image",
"keep_original_sound": true
}' \
--output-dir <absolute/path>
Use when the video edit is a localized style modification — outfit swap, scene relight, atmospheric restyle — and identity preservation is critical. Faster and cheaper than Wan 2.7 Edit-Video; capped at 720p.
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt | string | yes | — | Natural-language video edit instruction. |
video_url | string | yes | — | MP4/MOV/WEBM/GIF source for the video edit. |
resolution | enum | no | 720p | 720p only for this video edit tier. |
Outfit-swap video edit:
runcomfy run decart/lucy-edit/restyle \
--input '{
"prompt": "Change outfit to professional business attire; preserve face and motion.",
"video_url": "https://.../subject-walking.mp4"
}' \
--output-dir <absolute/path>
Atmospheric video edit:
runcomfy run decart/lucy-edit/restyle \
--input '{
"prompt": "Make lighting warm and golden hour; preserve face, pose, and motion.",
"video_url": "https://.../subject-portrait.mp4"
}' \
--output-dir <absolute/path>
Video edit prompts behave differently from text-to-video prompts. The source clip already fixes most of the look — your prompt should drive the change, not redescribe the video.
"Preserve [face / pose / motion / framing / lip movement]; [then state the video edit change]". Tell the video edit model what NOT to change.reference_image only when the video edit needs an exact visual (packaging swap, costume swap matching a target). Don't pass refs for general restyle video edit.audio_setting: "origin" for talking-head video edit where you don't want the soundtrack regenerated.What's the max duration of a video edit clip? Wan 2.7 Edit-Video: 2–10s. Kling Motion Control: 10s (image orientation) or 30s (video orientation). Lucy Edit Restyle: matches input.
What video formats does video edit accept? MP4, MOV (Lucy also takes WEBM and GIF). Source video edit input must be ≤100MB on Wan 2.7.
Does video edit preserve face identity? Yes — all three video edit routes are designed for identity preservation. State the goal explicitly: "preserve face and motion".
Can video edit keep the original audio? Yes — set audio_setting: "origin" on Wan 2.7 Edit-Video, or keep_original_sound: true on Kling. Lucy preserves audio by default.
What's the highest-resolution video edit available here? 1080p on Wan 2.7 Edit-Video. Kling and Lucy cap at 720p.
Video edit vs text-to-video on RunComfy? Video edit transforms an existing clip (look largely fixed by source). Text-to-video starts from a prompt only (look generated). Use video edit when you have a clip; use text-to-video for novel content.
Can I run multiple video edits in one call? No. Each video edit call applies one direction; for compound video edits, chain calls and stitch.
wan-2-7) instead of forcing it through this video edit router.| code | meaning |
|---|---|
| 0 | video edit succeeded |
| 64 | bad CLI args |
| 65 | bad input JSON for video edit / schema mismatch |
| 69 | upstream 5xx |
| 75 | retryable: timeout / 429 |
| 77 | not signed in or token rejected |
Full reference: docs.runcomfy.com/cli/troubleshooting.
The skill picks one of three video edit endpoints (Wan 2.7 Edit-Video, Kling Motion Control, or Lucy Edit Restyle) based on user intent, and invokes runcomfy run <endpoint> with the matching JSON body. The CLI POSTs to the RunComfy Model API, polls the video edit request status every 2 seconds, and downloads the resulting video from the *.runcomfy.net / *.runcomfy.com URL into --output-dir. Ctrl-C cancels the in-flight video edit request.
runcomfy login writes the API token to ~/.config/runcomfy/token.json with mode 0600. Set RUNCOMFY_TOKEN env var in CI.--input. The CLI does NOT shell-expand. No shell-injection surface.model-api.runcomfy.net and *.runcomfy.net / *.runcomfy.com. No telemetry.