SuperAPI AI Directory

ai-video-script

Writing & research

View repository

Updated 10-16 08:02

About this skill

AI Video Script

Purpose

Organize a topic, story, product material, or knowledge point into a video script that can be reviewed, used for image generation, voiceover, and compositing. This Skill handles planning and handoff; it does not replace image generation, video compositing, or official account publishing tools.

Trigger Scenarios

  • Need to generate a short video, story video, knowledge video, product introduction, or talking-head video script.
  • Need to break long text into shots and prepare visual prompts, narration, and subtitles for each shot.
  • Need to hand off the script to story-to-scenes、image-service、video-creator or wechat-publisher for further processing.
  • Need to batch-generate script versions for different platforms, durations, or styles.

This Skill is not triggered by standalone image generation, video compositing, subtitle burning, or official account publishing requests; these requests are handed off to the corresponding sibling Skills.

Security Boundaries

  • Only plan and organize content; by default, do not call external services, do not publish, and do not write credentials.
  • Use only relative paths and placeholders, for example projects/{project_id}/scenes/scene-01.png。
  • Do not write personal names, personal paths, internal brands, private configurations, Tokens, Cookies, AppSecret, or fixed absolute paths.
  • Do not modify files in story-to-scenes、image-service、video-creator、wechat-publisher ; handoff is completed only through agreed fields and relative artifact paths.
  • Without explicit confirmation, output only drafts and items pending confirmation; do not perform image generation, compositing, or publishing.

Input Contract

First collect the fields in the table below. When non-critical fields are missing, use default values and record the default values in the result; when the topic, purpose, or duration is missing, first ask one minimal clarifying question.

Field Required Default Value or Constraint
topic Yes Topic, story, product, or knowledge point
purpose Yes Resonance, popular science, conversion, brand awareness, or another goal
audience No 普通观众
platform No 通用视频; short video platforms usually use vertical orientation
duration_sec Yes Recommended 15–180 seconds; if not provided, ask, do not guess arbitrarily
aspect_ratio No General default 16:9; when the short video platform is specified, use 9:16
style No 清晰、节奏紧凑、视觉统一
source_material No Public text, key points, product material, or story outline
cta No None; add a call to action only when there is indeed a goal
constraints No Sensitive words, copyright, brand terminology, prohibited visual elements, etc.

Standard Output Contract

Each delivery generates a human-readable script and, as needed, structured handoff data. The recommended script delivery package is as follows:

projects/{project_id}/
├── script.md                 # 审阅版脚本,必需
├── script.yaml               # 结构化脚本,需下游自动化时提供
├── prompts/                  # 每个镜头的中文提示词,可选
│   ├── scene-01.txt
│   └── scene-02.txt
└── handoff/                  # 下游交接清单,可选
    ├── scene-manifest.yaml
    ├── image-manifest.yaml
    ├── narration-plan.yaml
    └── wechat-article.md

Project-Level Fields

schema_version: "1.0"
project:
  id: "{project_id}"
  title: "{title}"
  topic: "{topic}"
  purpose: "{purpose}"
  audience: "{audience}"
  platform: "{platform}"
  duration_sec: 30
  aspect_ratio: "16:9"
  style: "{style}"
  cta: "{cta_or_empty}"
  status: draft
global_visual:
  style_prefix_zh: "{全片统一风格前缀}"
  palette: "{色彩基调}"
  continuity_rules:
    - "{角色、道具、场景或镜头连续性规则}"
  negative_prompt_zh: "无水印、无随机文字、无多格拼接"
scenes: []

Shot-Level Fields

Each shot must fill in at least the following fields; before TTS is completed, timecodes can only be marked as estimates:

- id: "scene-01"
  title: "{镜头标题}"
  purpose: "hook"
  timecode:
    start_sec_estimate: 0
    end_sec_estimate: 4
    duration_sec_estimate: 4
    final_duration_sec: null
    duration_source: "pending_tts"
  visual:
    description_zh: "主体、动作、环境、细节、构图和光线"
    shot_type: "特写"
    camera_motion: "缓慢推进"
    prompt_zh: "{可直接交给图像 Skill 的中文提示词}"
    negative_prompt_zh: "{中文排除词}"
    reference_assets: []
    output_path: "projects/{project_id}/scenes/scene-01.png"
  audio:
    narration: "{旁白}"
    subtitle: "{屏幕字幕}"
    emotion: "{语气和情绪}"
    sound_design: "{环境声或音效;没有则留空}"
  continuity:
    characters: []
    locations: []
    props: []
  handoff:
    story_to_scenes: false
    image_service: true
    video_creator: true
    wechat_publisher: false

Hard requirement: the video-creator finally handed off to final_duration_sec must come from the narration.json timestamps generated by TTS; the use of estimates, even distribution, or duration: auto。

Standard Workflow

1. Parse Requirements

Extract the topic, purpose, audience, platform, duration, aspect ratio, style, material, and call to action. List uncertain items as "pending confirmation"; do not write guesses as facts.

2. Design Content Structure

Choose the structure according to the video purpose:

  • Conversion type: problem hook → product or solution → evidence → call to action.
  • Story type: setup → conflict → turning point → result or lingering impression.
  • Popular science type: counterintuitive hook → core explanation → example → conclusion.
  • Voiceover type: one-sentence conclusion → three key points → one-sentence wrap-up.

Label each shot with purpose, to avoid having only visual descriptions without narrative function.

3. Break down shots

Cut shots based on semantic changes, action changes, information points, and rhythm, not by mechanically averaging word counts. Each shot must simultaneously specify:

  1. The visual subject and action;
  2. Environment, time, lighting, and color;
  3. Shot size, composition, and camera movement;
  4. Voiceover, subtitles, and emotion;
  5. Continuity of characters, props, and locations;
  6. Chinese image generation prompt, negative words, and relative output path.

Prioritize keeping the style prefix, aspect ratio, color, and character descriptions consistent within the same project. On-screen text is added only when the script explicitly requires it; by default, exclude watermarks, random letters, garbled text, and multi-panel collages.

4. Write voiceover and subtitles

  • Use colloquial short sentences for voiceover; ensure information completeness first, then compress the rhythm.
  • Subtitles and voiceover must remain semantically consistent; a single subtitle carries only one information point.
  • Do not write unconfirmed facts, prices, effects, or promises as definite conclusions.
  • Split the voiceover into sentence segments that can be returned by TTS with timestamps, and in narration-plan.yaml keep the mapping between sentence segments and shots.

5. Perform pre-handoff checks

Complete the following checks before outputting the handoff package:

  • All shots have a unique id, numbering is continuous, and the order matches the script.
  • The sum of duration estimates matches the target duration; the final duration is still marked as pending_tts。
  • Each prompt_zh specifies the subject, action, environment, details, style, and color.
  • All visuals use the same aspect ratio; when reference images exist, record their relative paths.
  • Voiceover, subtitles, visuals, and sound effects do not contradict each other.
  • All output paths are relative paths or placeholders.
  • Remove personal information, internal information, credentials, and private configurations.

Handoff contract with existing Skills

This Skill only provides content and fields; it does not copy or modify downstream Skills. Choose one or more handoff paths from the table below according to requirements.

Downstream Skill Trigger condition Minimum input to it Result it is responsible for Boundary of this Skill
story-to-scenes The input is a story, course, picture book, or long text, and character and scene consistency is required scene-manifest.yaml: characters, locations, scene descriptions, shot types, style prefix, aspect ratio Character templates, scene images, and image set index Does not replace character locking, scene image generation, or resumable processing
image-service Need to generate or edit shot visuals image-manifest.yaml:prompt_zh, negative words, aspect ratio, reference image relative paths, output relative paths Images or edited images Does not read private configurations and does not directly call image APIs
video-creator Voiceover is confirmed and TTS, subtitles, and video composition are needed narration-plan.yaml, image list, aspect ratio, BGM/ending preferences narration.mp3、narration.json, subtitles, validated configuration, and video Do not falsify the final duration; after TTS, timestamps must be backfilled and pass alignment validation
wechat-publisher Explicitly require converting the script into a WeChat Official Account draft or publishing material wechat-article.md: title, summary, body, relative image paths, public link Layout preview or WeChat Official Account draft Do not inject credentials at the script stage, and do not publish by default

story-to-scenes Handoff fields

project_id: "{project_id}"
source_type: story
aspect_ratio: "16:9"
style_prefix_zh: "{统一风格}"
characters:
  - id: "character-01"
    name: "{角色名}"
    description_zh: "{可复用外貌描述}"
locations:
  - id: "location-01"
    name: "{地点名}"
    description_zh: "{环境描述}"
scenes:
  - id: "scene-01"
    description_zh: "{场景动作和叙事目的}"
    shot_type: "中景"
    mood: "{情绪}"

image-service Handoff fields

project_id: "{project_id}"
aspect_ratio: "16:9"
style_prefix_zh: "{统一风格}"
items:
  - scene_id: "scene-01"
    mode: text_to_image
    prompt_zh: "{中文提示词}"
    negative_prompt_zh: "{中文排除词}"
    reference_assets: []
    output_path: "projects/{project_id}/scenes/scene-01.png"

video-creator Handoff fields

project_id: "{project_id}"
aspect_ratio: "16:9"
narration:
  text: "{完整旁白}"
  segments:
    - id: "narration-01"
      scene_ids: ["scene-01"]
      text: "{句段旁白}"
images:
  - scene_id: "scene-01"
    file: "projects/{project_id}/scenes/scene-01.png"
    duration_source: "narration.json"
    final_duration_sec: null
subtitles_path: "projects/{project_id}/subtitles.srt"
video_config_path: "projects/{project_id}/video_config.yaml"

After TTS is complete, map narration.json 's sentence segment start and end times back to scene_ids, calculate the final duration of each image, run downstream alignment validation, and only then allow composition.

wechat-publisher Handoff fields

Generate only when explicitly required:

---
title: {公开标题}
cover: ./assets/cover.jpg
---

# {公开标题}

> {一句话摘要}

## 视频看点

{从脚本整理出的公开内容}

![配图](./assets/scene-01.jpg)

## 观看与行动

{公开链接或行动号召}

Cover images and illustrations must use relative paths; before draft submission, wechat-publisher completes content, safety, and permission checks.

Quality checklist

Content

  • The opening raises a clear question, conflict, or benefit at the target platform's first pacing point.
  • Every shot advances information, emotion, or action; remove empty shots with no function.
  • The ending is consistent with purpose ; when there is no CTA, do not force one in.

Visuals

  • The same project uses a unified aspect ratio, style prefix, color, and character description.
  • Prompts include subject, action, environment, details, style, and color.
  • By default, exclude watermarks, random text, garbled text, multi-panel collages, and irrelevant people.
  • For story-based projects, first hand off to story-to-scenes for character/scene consistency, then hand off to image-service to generate the specific visuals.

Audio-visual

  • Narration sentence segments can be clearly segmented by TTS.
  • Subtitles are semantically consistent with the narration and readable in length.
  • final_duration_sec is empty before TTS, and after TTS comes from narration.json。
  • Before video composition, video-creator 's audio-visual alignment validation has already been run.

Desensitization and delivery

  • Contains no personal names, personal paths, internal brands, private configurations, or credentials.
  • All resource paths are relative paths or placeholders.
  • Generate wechat-article.mdonly when explicitly required, and do not submit or publish by default.

Reusable resources

  • templates/video-script.md: a standard Chinese script template, including project fields, shot fields, and handoff fields.
  • examples/product-launch.md: a desensitized 30-second product introduction example, used to check whether the fields are complete.