openchatcut
Connect an MCP-capable coding agent to OpenChatCut and edit local video projects. Use when the user asks to install, connect, or set up OpenChatCut; inspect or…
AI video generation via Seedance 2.0, Kling, MiniMax Hailuo, and xAI Grok Imagine. Use when the user wants to generate a video clip — text-to-video, image-to-video, first/last-frame transitions, reference-guided generation, multi-shot, or generatively editing / extending an
$ npx -y skills add 0xsline/OpenChatCut --skill video-gen --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/video-genContext preview
The summary Claude sees to decide when to auto-load this skill.
AI video generation via Seedance 2.0, Kling, MiniMax Hailuo, and xAI Grok Imagine. Use when the user wants to generate a video clip — text-to-video, image-to-video, first/last-frame transitions, reference-guided generation, multi-shot, or generatively editing / extending an
name: video-gen description: | AI video generation via Seedance 2.0, Kling, MiniMax Hailuo, and xAI Grok Imagine. Use when the user wants to generate a video clip — text-to-video, image-to-video, first/last-frame transitions, reference-guided generation, multi-shot, or generatively editing / extending an existing clip. user-invocable: true
Submits one video generation job per call and returns a `jobId`. Job management (wait / status) belongs to `track_progress`; this skill does **not** place videos on the timeline automatically.
Any time the user wants to generate a video clip — text-to-video, image-to-video, first-last-frame transition, reference-based generation, multi-shot storyboard, or generatively editing / extending an existing video (producing new generated footage based on a source clip; not timeline trimming).
| Model | Reference | Strengths | | --- | --- | --- | | `seedance2` | [references/seedance2.md](references/seedance2.md) | Default when configured. Multimodal refs, first/last, edit/extend/bridge, 2–15s, 480p/720p/1080p/4k, audio/seed/camera/watermark/last-frame/task controls. | | `kling` | [references/kling.md](references/kling.md) | Technical camera/performance; Omni multi-shot; images ≤7 (≤4 with one feature `refVideos`); std/pro; 3–15s. | | `hailuo` | [references/hailuo.md](references/hailuo.md) | MiniMax 海螺. T2V / I2V / first+last; **6s or 10s**; 512P (Hailuo-02), 720p→768P, 1080P (6s); no multi-ref / multi-shot. | | `grok-imagine-video` | [references/grok-imagine-video.md](references/grok-imagine-video.md) | xAI Grok Imagine. Text-to-video only; 1–15s; 480p/720p/1080p; audio track included. | | `ofox` | [references/ofox.md](references/ofox.md) | OFox multi-model gateway (Seedance/Wan and more behind one key). Text/image-to-video, first+last frame, up to 9 image refs; 2–30s with per-model API limits; 480p/720p/1080p per model. |
**IMPORTANT:** Before generating, READ the chosen model's reference for capabilities, input channels, modes, prompt structure, and model-specific behavior. Never invent params the reference forbids.
Respect **configured vendors** from the capabilities prompt (only call a model whose key is on).
1. **User named a vendor** ("用海螺", "MiniMax", "Kling", "Seedance") → that `model`, if configured. 2. Else **default `seedance2`** when Seedance is configured. 3. Else if only Kling is on → `kling`. Else if only MiniMax is on → `hailuo`. Else if only xAI is on → `grok-imagine-video`. Else if only OFox is on → `ofox`. 4. Switch away from default when:
If the required model is **not configured**, say so and offer: another configured video vendor, upload, or Motion Graphic — do not pretend the API exists.
Briefly tell the user what you will generate before submitting.
| Param | Values | Default | | --- | --- | --- | | `model` | `seedance2`, `kling`, `hailuo`, `grok-imagine-video`, `ofox` | seedance2 when available | | `durationSeconds` | model-specific | seedance/kling ~5; **hailuo 6 or 10** (1080p → 6 only); **grok 1–15**; **ofox 2–30 (per-model API limits)** | | `ratio` | see model docs | 16:9 (seedance/kling/grok/ofox); **ignored on hailuo** | | `resolution` | `480p`, `512p`, `720p`, `1080p`, `4k` | provider-specific; hailuo adds 512p for Hailuo-02; grok: 480p/720p/1080p | | `refVideoMode` | `feature`, `base` | kling only, with `refVideos` | | `promptOptimizer` / `fastPretreatment` | boolean | hailuo only | | `generateAudio`, `seed`, `cameraFixed`, `watermark` | controls | seedance only | | `returnLastFrame`, `executionExpiresAfter`, `priority` | controls | seedance only; requested last frame becomes another image asset | | `name` | descriptive asset name | required for good pool UX | | `firstFrame` | project image asset ref | optional | | `lastFrame` | project image asset ref | seedance / kling / hailuo (requires firstFrame; not with multi-ref on seedance) | | `refImages` / `refVideos` / `refAudios` | asset refs | seedance full; kling: images + **1** feature video (no audio); hailuo: none (frames / S2V subject) | | `mode` / `shotType` / `multiPrompts` | Kling multi-shot | kling only |
Model-specific params — see the model's reference.
`firstFrame` / `lastFrame` / `refImages` / `refVideos` / `refAudios` all take a project asset reference. Prefer a full UUID or short prefix from `read_project`; `asset://<id>` and same-project asset URLs returned by `read_project` are also accepted. Per-slot type: frame slots and `refImages` → image; `refVideos` → video; `refAudios` → audio.
External URLs and base64 are not accepted. If the source is a public URL, download it into the project first (`download_media` for video/audio, `submit_image` for images) and pass the resulting asset id.
Four-step loop. For each new generation, restart from Step 1 if the user's intent has shifted.
Before writing any prompt, align on three dimensions:
1. **Duration & segments** — total length, how many shots, and whether they live in one clip or several.
If the user has already stated a direction ("做一段", "in one video", "分别生成", "split into N shots", etc.), follow it — don't second-guess.
Otherwise, surface the two paths and let the user pick:
Open-source, local-first conversational AI video editor with a professional multi-track timeline, Agent Skills, MCP integration, and Remotion rendering.
Repo: 0xsline/OpenChatCut
Connect an MCP-capable coding agent to OpenChatCut and edit local video projects. Use when the user asks to install, connect, or set up OpenChatCut; inspect or…
Plan AI short films with story, shots, prompts, and continuity.
Use when acquiring or importing media into a OpenChatCut project asset library for video editing or creation, including local/attached videos, user-provided…
Turn one pool of existing project media into a batch of distinct, publishable montage cuts instead of a single hero edit. Use for batch montage,…
Plan and build a finished beat-synced montage where cut placement serves the content, not just the metronome. Use for 卡点混剪, 卡点剪辑, 踩点视频, beat-sync montage,…
Use whenever the agent needs to add, create, hand-author, patch, or place Motion Graphic JSX assets in a OpenChatCut project. This is the direct-authoring…