Kelly mv
Music-video production skill for turning an existing MP3 into a pure-visual (no-voiceover) music video through a bundled local App-in-Skill UI. Use when the user wants to build an MV from a song they upload: write a one-line concept, keep a cast of characters with reference cards, and break the song into storyboard shots where each shot has a scene description and an image + video that can be either AI-generated (image-to-image from the character cards, draft video via local LTX) or uploaded by the user. Same character/storyboard management model as kelly-drama. Song generation (creating the song itself, incl. voice-cloned singing) is a documented future capability.From its SKILL.md
npx -y skills add mr-kelly/skills --skill kelly-mvAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
8.8 KB, ~2.0k tokens by cl100k_base, as published. Nobody here has run it
Kelly MV
App UI Screenshots
<table> <tr> <td width="50%"><img src="assets/screenshots/overview.webp" alt="Kelly MV concept view"></td> <td width="50%"><img src="assets/screenshots/storyboard.webp" alt="Kelly MV storyboard"></td> </tr> <tr> <td><strong>Concept</strong><br>MV concept workbench with project checklist, next-step guidance, concept form, and how-to walkthrough.</td> <td><strong>Storyboard</strong><br>Shot list with duration, image status, and a detail pane for description, image generation, and video upload.</td> </tr> <tr> <td width="50%"><img src="assets/screenshots/cast.webp" alt="Kelly MV cast"></td> <td width="50%"><img src="assets/screenshots/song.webp" alt="Kelly MV song"></td> </tr> <tr> <td><strong>Cast</strong><br>Character list with reference card status and a detail form for visual description, wardrobe, and consistency anchors.</td> <td><strong>Song</strong><br>MP3 upload and song metadata form with auto-detected duration and song-gen backend status.</td> </tr> </table>Core Idea
Use this skill as a music-video creative workspace. The app is the human editing surface; the skill is the creative producer: it reasons, drafts, validates, exports, and prepares AI-generation prompts. The app only reads and writes local project files.
An MV here is pure picture — no voiceover, no dialogue, no on-screen lyrics. The job is simple: take an existing MP3 and give it visuals. The final video is the storyboard shots played in order over the song. (For voiced/dialogue drama, use kelly-drama instead — that is its job.)
The app has exactly four areas: 概括 (Concept), Song, 角色 (Cast), 分镜 (Storyboard). Keep it that simple — don't reintroduce song sections, timeline tiling, or large per-shot production sheets.
Default to the local app for ongoing creative work. Use chat-only mode only when the user explicitly asks for "chat only", "no UI", "纯聊天", or similar.
Default Flow
- Start or reuse the local app with
app/start.sh(defaults to127.0.0.1:3041; honorsKELLY_MV_UI_PORT). - Check
app/.data/project.json. If missing, the server seeds the bundled starter (a 静夜思 sample MV). You can also reseed withscripts/create_sample_project.ts. - Use the app, following the sidebar 下一步 (next step):
- 概括 (Concept): one-line summary of what the MV is and its tonality, a one-line visual
look, and aspect ratio. That's it. - Song: upload an MP3. Duration is read automatically. Optional title/artist. Nothing else.
- 角色 (Cast): the people on screen. Stable id, role, three-view visual notes, wardrobe, anchors, forbidden drift, and a character reference card image. Generate reference cards before storyboard work when consistency matters. No voice profiles (pure-visual MV). Same model as kelly-drama.
- 分镜 (Storyboard): an ordered list of shots. Each shot has a 画面描述 (scene description), on-screen characters, a duration, and an image + a video. Image and video can each be AI-generated (image-to-image from the character cards; draft video via local LTX) or uploaded by the user.
- 概括 (Concept): one-line summary of what the MV is and its tonality, a one-line visual
- After edits, run
scripts/validate_ui_schema.ts(structure) andscripts/validate_shot_readiness.ts(each shot has a title, description, and sane duration) before generating. - Export a readable concept + shotlist with
scripts/export_story_bible.tsfor handoff.
Creative Operating Rules
- Pure visual. Never add dialogue audio, narration TTS, or burned-in subtitles/lyrics. The only audio is the song itself.
- Keep it simple. The shot is just a scene description + characters + duration + image + video. Do not add camera-spec sheets, song-section taxonomies, lyric timelines, or strict timeline-coverage rules.
- Pace to the music. Cut shot lengths to the song — quick moments run short (4–6s), establishing/hero/montage runs longer (8–12s). A single AI-generated shot must be 4, 5, 6, 8, 10, or 12 seconds and never exceed 12s. (Uploaded clips can be any length.)
- Two ways to fill a shot. Each shot's image and video can be generated or uploaded — both append as non-destructive candidates and the user picks the active one. Respect what the user wants; don't overwrite an uploaded asset by regenerating.
- Character consistency via real image-to-image. Storyboard image generation feeds the existing character reference-card images to the image
/images/editsendpoint as actual input pixels, not just text. If a character lacks a generated reference card, that shot falls back to text-to-image and the likeness drifts — generate the card first. - Generate in dependency order: song uploaded → concept written → cast reference cards → storyboard images → draft shot videos. The shot's
descriptionis the image prompt; an optionalnegative_promptandvideo_promptrefine generation. - Photoreal MV look (when realism is the target): request cinematic music-video stills, real lensing, filmic grain; forbid on-screen lyrics/captions/watermarks/UI, readable fake text, plastic skin, and malformed hands.
Song Generation (future capability)
Selecting/importing an existing song is the supported path today. Creating the song itself — including singing in the user's cloned voice — is wired as a documented stub (POST /api/song-generate → scripts/gen_song.py), mirroring the local-draft / cloud-prod split used for video.
Recommended local backends (Apple Silicon, no cloud):
- SongGeneration v2 (Tencent) — native MLX weights
mlx-community/SongGeneration-v2-large. Best fit for "本地 MLX 最好"; same family path as the local TTS/audio stack. Primary recommendation. - ACE-Step 1.5 — strongest local model, runs on Mac, <4GB, full vocals + instruments, supports audio-prompt timbre cloning and lyric editing → the path for "用我 clone 的声音创歌" (pass a reference clip as the timbre prompt).
- YuE / DiffRhythm — full-length song-from-lyrics alternates; heavier.
Caveat: cloning a singing voice needs a singing reference clip; a spoken sample clones timbre but not vocal performance well. To enable generation, install a backend into app/.data/song/venv, implement the inference call in scripts/gen_song.py, then flip draft_ready in song-service.songConfigPayload().
App Contract
The local app uses file-backed JSON only:
app/.data/project.json: canonical MV workspace (song,treatment= concept,characters,shots).app/.data/image_config.json: local-only image API configuration for storyboard generation.app/.data/song_config.json: optional local-only song-generation backend configuration.app/.data/generated/songs/: uploaded (or generated) song audio.app/.data/generated/storyboards/,.../references/,.../videos/: generated or uploaded images and shot videos.app/.data/agent.lock: temporary write lock.
The app must not call external models for free, publish files, send messages, or mutate external systems beyond the configured image/video generation the user triggers. The skill may prepare or execute other actions only after the user asks.
When To Read References
- Read
references/mv-workflow.mdwhen designing or improving an MV concept, cast library, shot breakdown, or image/video prompt workflow. - Read
references/ui-schema.mdwhen editing app files, generating project JSON, or validating data.
Useful Commands
skills/kelly-mv/app/start.sh
node skills/kelly-mv/scripts/create_sample_project.ts
node skills/kelly-mv/scripts/validate_ui_schema.ts
node skills/kelly-mv/scripts/validate_shot_readiness.ts
node skills/kelly-mv/scripts/export_story_bible.ts
Run validate_shot_readiness.ts (optionally --strict) before an image/video generation pass. Use paths relative to the skills repository root, or run the scripts from inside skills/kelly-mv.
Execution reports
Re-read the active provider's decisions immediately before any approved execution. Record each concrete operation, target, status, timestamp, and error in the provider-backed execution report; keep app actions local-only.
What ships with it: 73 files
300.4 KB alongside SKILL.md, 41 of them executable
agents/
- openai.yaml489 B
app/
- accent-theme.css7.5 KB
- accent-theme.jsruns7.3 KB
- app.jsruns14.5 KB
- demo-visuals.css1.4 KB
- demo-visuals.jsruns4.4 KB
- i18n/messages.jsruns14.7 KB
- index.html6.8 KB
- js/workspace-views.jsruns25.2 KB
- server/demo.tsruns19.2 KB
- server/demo-visuals.tsruns12.0 KB
- server/hono.tsruns12.7 KB
- server/image-service.tsruns204 B
- server/index.tsruns622 B
- server/launcher.tsruns2.8 KB
- server/lock.tsruns438 B
- server/paths.tsruns1.5 KB
- server/project-store.tsruns886 B
- server/provider.tsruns487 B
- server/setup.tsruns6.3 KB
- server/song-service.tsruns196 B
- server/state.tsruns5.5 KB
- server/types.tsruns4.0 KB
- server/upload-service.tsruns3.2 KB
- server/utils.tsruns990 B
- setup-gate.css4.5 KB
- setup-gate.jsruns8.8 KB
- start.shruns462 B
- styles/layers.css24 B
- styles/shell.css18.8 KB
- styles/workflow.css20.2 KB
assets/
33 more files not listed here. See all 73 in the repository.