如何给 AI 短剧写剧本:shuohao-skills novel-script 的节拍流、确定性时长折算与 TTS 台词本实战
【免费下载链接】shuohao-skillsAI 短剧制作的 skill 集合:拆角色、排大纲、出场景与道具设定、写剧本、切分镜 | Agent skills for AI short-drama production — character bibles, adaptation outlines, art bibles, screenplays, storyboards. Runs in Claude Code & codex.项目地址: https://gitcode.com/gh_mirrors/sh/shuohao-skills
shuohao-skills是一个 AI 短剧制作的 skill 集合,其中的novel-script专门负责"写剧本"这一环:把大纲的分集梗概落成场次 + 节拍流(动作与台词交替的结构化数据),按语速确定性折算每集时长,并按角色聚合成可直接对接 TTS 的台词本。本文面向新手,用大白话讲清它的设计思路、质量门和一条命令跑通的全过程。
一、剧本在整个 AI 短剧管线中的位置
novel-script 不是孤立的,它处在一条完整管线的中间:小说原文 → 改编大纲 →剧本+ 场景设定 + 角色设定(三者同步迭代)→ 分镜 → 批量生成。
其中有一条刻在骨子里的原则:剧本管戏,分镜管拍。台词要反复推翻重写,如果绑上镜头分解,每改一句台词都得重排镜头。所以这一层只有"集、场次、节拍流",没有镜号——镜头和画面提示词是下一层 novel-storyboard 的活。
上游 novel-outline 产出的outline.json(分集梗概、爽点落点、单集时长)就是剧本的直接输入。
二、一键安装:在 Claude Code 和 codex 中跑起来
前置条件只有两条:Node ≥ 18(脚本零 npm 依赖,不用install)和模型额度(用你当前会话的额度,不需要任何 API key)。
git clone https://gitcode.com/gh_mirrors/sh/shuohao-skills cd shuohao-skills ./scripts/install.shscripts/install.sh 会自动检测本机装的是 Claude Code 还是 codex,把所有 skill 以软链方式挂过去——以后git pull立刻生效,不用重装。只想装剧本这一个 skill 的话:
./scripts/install.sh novel-script装好后,在 agent 会话里说一句"给《渡口》写第 1–3 集剧本"就会触发它(触发词包括:写剧本、出剧本、写台词、场次等,见 SKILL.md 头部元数据)。
三、节拍流:台词是结构化数据,不是散文
novel-script 的底线是:台词必须是结构化数据。每句台词是独立条目(说话人 + 台词 + 语气),每个动作是独立节拍,一场戏的flow就是动作节拍与台词节拍交替出现的序列:
{ "speaker": "C01", "line": "不劳烦。它跟我。", "delivery": "声音很轻,却没商量" } { "action": "老周看了她一眼,没说话。他收了跳板,撑篙离岸,栈桥缩回雾里。" }为什么非这样不可?
- 台词逐句对接 TTS:每句带说话人和语气(
delivery),配音引擎可以直接逐句生成,画外音统一标VO,谁的心声写在语气栏里; - 动作节拍就是画面要发生的事:它天然就是给视频生成模型的"这场戏画面里要演什么",下游分镜层直接继承;
- 混成散文,两头都喂不进管线——这正是 script-pass.md 里反复强调的。
写戏的几条硬规则(完整清单在 script-pass.md):
| 规则 | 一句话解释 |
|---|---|
| 动作要"常见" | 挑担上船、搭手卸担这种 AI 见过千万次的动作放心写;"伸篙一挡"这类精巧交互生成必崩 |
| 一拍一件事 | "手停在半空,笑僵在脸上"是一拍;"气氛很尴尬"不是画面 |
| 谁的话像谁 | 船夫不说文言,小姐不说市井话;盖着名字也认得出是谁在说 |
| 冷开场给钩子 | 每集第 1 拍就给钩子的具象且带运动(抱箱在雾里跑 ✓,静物特写 ✗) |
| 结尾一拍必是悬念 | 一句没说完的话、一声来历不明的响 |
四、确定性时长折算:一集三分钟就是三分钟
短剧是按秒卖钱的。novel-script 的时长不是"大概三分钟",而是确定性折算 + 当场拦截:
- 台词秒数 = 非空白字符数 ÷ 语速(默认 4.5 字/秒,标点算时间——停顿也是时间)
- 动作秒数 = 动作节拍数 × 2.5 秒/拍
- 每集预估时长必须落在
目标秒数 × (1 ± 15%)内,写超写欠当场拦下,不流到生成环节才发现
规则细节和参考体量都写在 schema.md 的"时长折算"一节:三分钟(180 秒)一集约 45–55 个节拍、台词 30 句上下;两分钟(120 秒)约 35 拍、台词 20 句上下。配音语速不同?调params.charsPerSecond即可,四个参数(语速、节拍秒数、容差、单句字数上限)都可覆盖。
五、10 道质量门:交给代码,不交给模型自觉
仓库的一贯主张是"checklist 交给模型自觉是靠不住的"。novel-script 有10 道质量门全部由脚本确定性检查(引擎在 novel-script.mjs),摘几道关键的:
| 门 | 规则 | 为什么 |
|---|---|---|
| 每集时长 | 预估落在目标 ±15% 内 | 一集三分钟就是三分钟 |
| 单句台词 | ≤ 35 字 | 一口气说不完的台词也生成不了 |
| 钩子前 3 拍兑现 | hookBeat认领钩子具象位置,必须落在全集前 3 拍内 | 冷开场是门,不是自觉 |
| 每场至少一个动作节拍 | 纯对白的场 = 广播剧 | AI 生成时没有画面可写 |
| 动作叙述体 | 动作里不许出现引号台词 | 混进动作就没法计秒、没法喂 TTS |
| 爽点认领 | 大纲说这集有的爆点,剧本必须有戏扛 | 防止改着改着把爆点改丢 |
| 上游对账 | 角色对 outline、场景/光照/道具对 art | 写了美术没登记的光照状态,当场报 |
校验命令只有一条:
node skills/novel-script/scripts/novel-script.mjs validate script.json \ --outline outline.json --art art.json有违规就逐条修、改完重跑,直到通过。写超了先砍动作节拍再压台词;写欠了补冲突不补寒暄。
六、台词本:带音色提示词,直接跑 TTS
跑render出单页评审报告 script-report.html,双击就能开,零外部依赖、离线可用。
报告五个区块,对 TTS 最有用的是台词本:
- 一排两个,按角色聚合全部台词,每句带集/场引用;
- 组头显示句数、字数、约合秒数,附"复制全部台词"按钮,整组台词一键复制直接喂 TTS;
- 给了
--cast参数(来自 novel-characters 的角色资产)后,每个角色组头还带音色提示词按钮——台词和音色一页配齐; VO心声单独成组,配音时好区分。
其余区块:时长仪表(每集条形图打在目标区间绿带上,超时欠时红字点名差几秒)、分集剧本(一排两集,台词悬停单句复制)、场次总表(自动汇总,模型不写)、质量门面板和导出 JSON(下载的就是script.json原样,改完能喂回render/validate)。界面默认中文,加--lang en出全英文界面。
七、往下一层:从剧本到分镜
剧本过了质量门,就接力给分镜 skill:镜号、单镜头时长(2–5 秒硬门)、首帧提示词、生成批次单都在那边。分镜只做输出不做新决定,剧本层改一句台词不会连带重排全部分镜——这正是"剧本管戏,分镜管拍"的红利。
仓库自带的 渡口-script.json 是《渡口》全 6 集完整剧本(9 场 123 句台词,每集冷开场兑现钩子、全部落在 120 秒 ±15% 内),全部质量门通过,可以直接打开当质量基准对着读。
八、常用文件速查
| 资料 | 路径 |
|---|---|
| 给 agent 读的工作流 | skills/novel-script/SKILL.md |
| script.json 结构 + 时长折算规则 | skills/novel-script/references/schema.md |
| 写戏硬规则、手感规则、常见病 | skills/novel-script/references/script-pass.md |
| 报告设计约定 | skills/novel-script/references/report-style.md |
| 确定性工具(seed/validate/checkup/render) | skills/novel-script/scripts/novel-script.mjs |
| 自测(151 项断言,不调模型) | skills/novel-script/scripts/selftest.mjs |
| 完整样例剧本 | skills/novel-script/examples/渡口-script.json |
| 项目总说明 | README.md |
上手建议:一次只写 ≤ 3 集——剧本是全管线改得最凶的一层,小批量出、快拍板、再往下写。🎬
【免费下载链接】shuohao-skillsAI 短剧制作的 skill 集合:拆角色、排大纲、出场景与道具设定、写剧本、切分镜 | Agent skills for AI short-drama production — character bibles, adaptation outlines, art bibles, screenplays, storyboards. Runs in Claude Code & codex.项目地址: https://gitcode.com/gh_mirrors/sh/shuohao-skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考