video-script · git:20260828.21694dd · 2026-08-28 · sha256 3b06a2078a62ff2b
video-script git:20260828.21694ddA
Immutable. This exact content is served forever at /api/v1/blob/3b06a2078a62ff2b.
--- name: video-script description: > 生成视频脚本,覆盖短视频(7-60秒)到中长视频(1-30分钟)全时长。 短视频:Hook 变体评分、分秒计时、字幕文案、封面方案。 中长视频:留存率优化、节奏中断点、前向钩子、章节结构。 适用于抖音、视频号、小红书视频、B站、YouTube 等平台。 当用户说"视频脚本"、"短视频脚本"、"抖音脚本"、"B站脚本"、 "视频号脚本"、"竖版视频"、"Reel 脚本"、"写个视频文案"时使用。 和 video-strategy 的区别:video-strategy 做视频内容规划和系列策划, video-script 写具体某一条视频的脚本。 layer: produce --- # 视频脚本生成 > 根据目标时长自动适配短视频或中长视频模式,生成留存率优化的结构化脚本。 ## 输入 | 字段 | 必填 | 说明 | 示例 | |------|------|------|------| | 主题 | 是 | 视频主题 | "为什么 Rust 正在替代 C++" | | 目标时长 | 是 | 秒数或分钟数 | 30 秒 / 10 分钟 | | 平台 | 否 | 抖音/视频号/小红书/B站(默认按时长推断)| 抖音 | | 内容类型 | 否 | 科普/教程/评测/种草/解说/杂谈 | 科普 | | 核心要点 | 是 | 要覆盖的关键信息 | 内存安全、性能… | | 调性 | 否 | 专业/轻松/犀利/对话感(默认:对话感)| 轻松 | ## 模式自动判定 | 时长 | 模式 | 典型平台 | 关键指标 | |------|------|----------|----------| | 7-15 秒 | 短视频·极速 | 抖音/视频号 | 3 秒完播率 | | 15-60 秒 | 短视频·标准 | 抖音/视频号/小红书 | 完播率、DM 转发、收藏 | | 1-5 分钟 | 中视频 | 视频号/抖音/B站 | 5 秒留存、互动率 | | 5-30 分钟 | 长视频 | B站/YouTube | 30 秒留存、播放完成率 | **语速基准**:中文约 250 字/分钟。 --- ## 短视频模式(≤60 秒) ### Step 1 — Hook 设计(3 个变体) 从 5 种 Hook 类型中选 3 个,各生成一个变体: | 类型 | 适用场景 | 示例 | |------|---------|------| | 好奇缺口 | 冷知识、反直觉 | "你每天做的这件事其实在伤害你" | | 模式打断 | 反常规、挑战认知 | "忘掉你以前学的所有XX" | | 身份触发 | 精准受众 | "如果你是XX,这条一定要看完" | | 痛点共鸣 | 真实困扰 | "明明很努力了还是没效果?" | | 权威背书 | 数据/研究支撑 | "最新研究发现:XX 竟然是错的" | 每个 Hook 按 4 维度评分(每项 1-5,满分 20):好奇强度、打断效果、身份触发、3 秒清晰度。选最高分作为主 Hook。 ### Step 2 — 分秒脚本 按时长压缩结构: | 时长 | 结构 | |------|------| | 7-15 秒 | Hook(0-2s) + 核心价值(2-10s) + 收尾(10-15s) | | 15-30 秒 | Hook(0-3s) + 痛点(3-8s) + 方案(8-20s) + 收尾CTA(20-30s) | | 30-60 秒 | Hook(0-3s) + 痛点(3-8s) + 方案(8-40s) + 洞察+CTA(40-60s) | 脚本格式: ``` [0-3s] HOOK 口播: "..." 字幕: "..." 画面: [描述] [3-8s] 痛点 口播: "..." 画面: [描述] ``` 每句 ≤15 字,口语化,加括号注释(停顿/强调/表情)。 ### Step 3 — caption + 封面 **caption**:100-300 字,Hook 变体开头(不重复视频 Hook),DM 转发 > 收藏 > 点赞。 **hashtags**:3-5 个垂直标签,不用泛标签。 **封面**:3-5 字大标题 + 画面描述 + 表情。 ### Step 4 — 质量评分(满分 100) | 维度 | 权重 | 检查点 | |------|------|--------| | Hook 强度 | 25 | 好奇缺口、打断效果、3 秒清晰度 | | 内容质量 | 25 | 价值密度、结构、痛点-方案清晰度 | | caption+CTA | 20 | 长度 100+字、转发型 CTA、Hook 变体 | | 格式合规 | 15 | 9:16 安全区、时长匹配、封面 | | 算法信号 | 15 | 收藏/转发优化、原创性 | ≥80 分交付,<60 分返工后重评。 --- ## 中长视频模式(>60 秒) > 留存率优化的详细方法(节奏中断点 / 前向钩子 / 章节结构 / 留存曲线)见 `references/retention-scripting-guide.md`。 ### Step 1 — 结构计算 根据目标时长分配各段: - **Hook**:0:00-0:30(短视频缩短到 0:00-0:10) - **开场**:0:30-2:00 - **首次 CTA**:约 25% 处 - **留存再拉回**:约 60% 处 - **结尾**:最后 60 秒 - **目标字数** = 时长(分钟) × 250 ### Step 2 — 写 Hook(三段式) | 阶段 | 时间 | 目标 | |------|------|------| | 抓眼 | 0-5s | 全片最重要的一句话,不加片头 | | 承诺 | 5-15s | 看完能获得什么,具体可感知 | | 悬念 | 15-30s | 不看会损失什么 | ### Step 3 — 内容段落 每段结构:节奏中断 → 正文 → 微总结 → 前向钩子。 **节奏中断**每 60-90 秒一次(短视频每 15-30 秒),类型:【镜头切换】【画面】【音效】【数据冲击】。 ### Step 4 — CTA 与结尾 - 首次 CTA(25% 处):软性、对话式、10-15 秒 - 留存再拉回(60% 处):"接下来是最关键的部分" - 结尾 CTA:硬性号召 + 下期预告,**不说"感谢观看"** ### Step 5 — 留存风险标注 扫描全稿,在危险区标 ⚠️ 警告(至少 3 处)+ 应对方案。 ## 输出格式 产物写入 `outputs/`。包含: - 脚本元数据(主题/时长/平台/字数) - 完整分段脚本(含时间码、口播、字幕、画面提示) - 节奏中断日志(时间戳/类型/说明) - 留存风险地图(中长视频)/ 质量评分(短视频) - 剪辑备注 ## 质量检查 - [ ] 字数与时长匹配(250 字/分钟,±10%):**用脚本判定,不靠估算**。把全部口播文案(去掉时间码、画面提示等非口播行)喂给 `python3 skills/shared/scripts/wordcount.py check --target <时长分钟×250> --tolerance 0.1`(stdin 传入),退出码 0 = 达标;非 0 时脚本给出「还需增/删 X 字」,据结果增删口播后重跑,直到通过。 - [ ] Hook 完整(短视频 3 变体评分;中长视频三段式) - [ ] 节奏中断频率达标 - [ ] CTA 位置正确 - [ ] 全稿口语化,短句,不像书面文 - [ ] 结尾有能量,不含收尾废话 ## Profile 感知 - **有 Profile**:读取 platform 锁定平台、audience 调整用语、tone 匹配风格、cta_style 使用惯用话术 - **无 Profile**:默认按时长推断平台,对话感调性