Communitygithub.com

ai-video-script

Write narration and storyboard for a short video: spoken script with three-pass de-AI-flavor review, shot list, beat grid, and film.json as the single source of truth. Runs after ai-video-brief, before rendering.

What is ai-video-script?

ai-video-script is a Claude Code agent skill that write narration and storyboard for a short video: spoken script with three-pass de-AI-flavor review, shot list, beat grid, and film.json as the single source of truth. Runs after ai-video-brief, before rendering.

Works with~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/LaomaiAI/ai-video-skills/tree/HEAD/skills/02-script

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation


name: ai-video-script description: Write narration and storyboard for a short video: spoken script with three-pass de-AI-flavor review, shot list, beat grid, and film.json as the single source of truth. Runs after ai-video-brief, before rendering.

ai-video-script: 口播与分镜

When to use

The brief is locked and the user has picked a narrative angle. This skill writes the spoken script, the shot list, the beat grid, and film.json. Do not start rendering before these files exist.

1. Write the script first

  • Write narration as spoken text, not written prose. Read every line aloud in your head: if a sentence cannot be spoken in one breath, split it.
  • Estimate duration at about 4.5 Chinese characters per second for planning only. Final timing always comes from the real voiceover duration, never from the estimate.
  • Shot length rule: each shot takes the max of action time, reading time, and narration estimate, plus a pause. Total film length is the sum of all shot frames. Never time-stretch audio to fit a shot.

2. Three-pass de-AI-flavor review

Run all three passes on the script before it goes to storyboard. Keep the review notes in script.md.

  • Pass 1, cut AI cliches: remove stock phrases, empty intensifiers, and sentences that say nothing in many words. Every sentence must carry one concrete fact, image, or action.
  • Pass 2, overlap check: if the script adapts a source text, shared real words with the source must be at most 15 percent, with no 8 consecutive identical characters. Rewrite, do not paraphrase around the edges.
  • Pass 3, read-aloud check: the script must sound like a person talking, not an essay. Cut written-only constructions and sentences that only work on paper.

3. Build the storyboard

Use templates/storyboard.md. Rules:

  • One shot lasts 1.5 to 5 seconds and shows exactly one thing.
  • A visible change every 2 to 3 seconds: entrance, main action, secondary action, exit or transition.
  • Open the first 3 seconds with one concrete small scene, not a title card. One concrete example runs through the whole film.
  • Each shot row has: number, time range, picture, action, camera move, on-screen text (at most 8 characters), method.
  • Pick 2 fixed accent words for the whole film, plus 3 to 8 subtitle emphasis words. Use them consistently.
  • Switch A-roll and B-roll at least once every 8 to 12 seconds.
  • Name the lead, the supporting elements, and the background for each shot. The lead moves first and largest; supporting elements follow 2 to 5 frames later with smaller movement.
  • Give every large action six phases: prepare, stretch, impact, squash, overshoot, settle.
  • Keep one main light direction for the whole film, with highlights and contact shadows following the action.

4. Beat grid

Music first: pick the track, set its BPM, write templates/beat-grid.json with timestamps and strong/weak beat marks. Land heavy actions and cuts on strong beats. Move sound effects from the motion itself. Use ease-in-out curves; no linear motion except deliberate mechanical motion.

5. film.json is the single source of truth

Write templates/film.json: title, format, fps, duration, style, voice, and the shot list with start/end times, picture, voiceover, on-screen text, and method. Every later step (render, voiceover, review) reads this file. If the script changes, update film.json first, then re-derive the rest.

Output contract

  • script.md (narration + timing + three-pass review notes).
  • storyboard.md (shot table).
  • beat-grid.json (BPM + strong/weak beats).
  • film.json (single source of truth).

Rules

  • Do not write rendering code in this skill. Text and timing only.
  • A shot that cannot be described in one row of the table is two shots; split it.
  • Uncertain facts stay marked "to verify" until checked; never smooth them over with confident wording.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Related Skills