short-drama-production · diff
git:20260902.e686e77 to git:20260904.2bc353a
3 added, 3 removed. Audit A to A.
---
name: short-drama-production
description: >-
Orchestrate an end-to-end short-drama production from a user's theme through
approved brief, complete episode outlines, playable per-episode screenplays with
character-specific dialogue followed by calibrated dialogue timelines, art bible, episode
directing, H3 shot design, MiniMax H3 generation,
scene-aware background music, audio mixing, QA, and a finished video. Use when a user
wants an AI agent to turn a short-drama idea into an episode-organized
production, or to resume such a project. For writing or revising a single
episode only, use short-drama-screenplay-writing instead. Pause at each
approval gate unless the user explicitly asks to skip that gate.
---
# 短剧全流程制作
把用户提出的主题逐步做成可持续续作的短剧项目。这个技能负责流程编排、文件组织、确认状态和阶段交接;具体写作、生图、导演与出片由配套技能执行。每个领域的专业规则只维护一份,本文件只声明职责归属并指向真源,不复述规则内容。
## 核心规则
1. 按 `Brief → 全剧分集概要 → 单集可演剧本与台词时间轴 → 单集美术 → 单集视频与配乐` 推进;一次只制作当前获批的集数,第 1 集交付后按同一流程续作。
2. Brief、分集概要、剧本+时间轴、美术各有一个用户确认关卡,成片交付后再确认修改方向。用户未明确通过不进入下一阶段,沉默不算通过;配套技能的自检与样片验收不替代用户确认。仅当用户明确要求跳过或全自动执行时才可合并关卡。
3. 用户提出修改时,只修改当前阶段并重新确认;上游通过的内容被修改后,把受影响的下游状态改回 `待更新`,不沿用旧内容。
4. 不把 Token、SSH 密码、服务器密码写进项目文件、提示词或本技能。
5. 情绪、表情、演技和节奏是全流程硬指标,统一执行 [短剧情绪表演与节奏规则.md](references/短剧情绪表演与节奏规则.md):情绪必须有触发、强度递进、可见表演、对手反应和局面后果;各阶段按该规则的分阶段要求写作与验收。
6. 分镜参考图默认不生成;仅当用户明确要求时,按用户指定的片段范围与数量制作。动作、表演、运镜和时序由 H3 prompt 决定,永远不由静态图决定。
7. 角色唯一性是视频生成硬指标:除非剧情明确需要分身、克隆、镜中人或多个时间态,同一具名角色在同一画面只能出现一次。每段 prompt 先正向精确计数,再补负向禁令,验收时逐段抽帧检查。逐镜头人数由导演卡 `VISIBLE_CAST` 承载,英文约束模板与最终提示词落点由 `h3-prompt-writing` 承载。不制作表情参考图,也不把任何表情图送进视频模型:表情图的存在经常导致它与人物三视图同时进入参考库,引发人物重影、人物分身;人物外观由三视图锁定,表演与表情变化一律由提示词驱动(素材规则见 `character-three-view`)。
8. 本集美术通过后先完成独立导演层,再写最终 H3 提示词。导演层只产出模型可执行的内容:全集视觉风格块(风格 token、调色、光线、镜头语言)、按戏剧动作切段、每段动作与表演链、动机化运镜与光线声音设计、精确人数、防复制约束和段间连续性;不写抽象导演意图或不进提示词的内部字段。`h3-prompt-writing` 只把已锁定的导演镜头卡转换成 H3 原生提示词,不得用模型语法反向替代导演判断。
- 9. 配乐执行 REUSE_FIRST:为第 N 集调用任何音乐生成 API 前,必须先检索本集已有音频、前 `1..N-1` 集已验收音频和 `音乐素材复用台账.md`;本地裁剪、循环、淡入淡出、均衡或对白闪避即可适配的 cue 不得重新生成。默认无主唱器乐,音乐服务表演,不盖对白。
+ 9. 配乐执行 REUSE_FIRST:为第 N 集调用 `minimax-music-gen` 生成音乐前,必须先检索本集已有音频、前 `1..N-1` 集已验收音频和 `音乐素材复用台账.md`;本地裁剪、循环、淡入淡出、均衡或对白闪避即可适配的 cue 不得重新生成。默认无主唱器乐,音乐服务表演,不盖对白。
进入新阶段时按阶段说明读取对应规则与配套技能的 `SKILL.md` 后再行动;同一文档已完整存在于当前上下文时不必重复读取。不要凭记忆重写配套技能的参数或格式。
## 项目状态与目录
首次执行时确定项目目录和剧名;用户没有提供的内容写入 Brief 的 `[待定]`,避免用大量问题阻断起稿。在项目根目录维护 `制作进度.md`,至少记录:
```markdown
- brief: 草稿 | 已通过 | 待更新
- episode_outlines: 未开始 | 草稿 | 已通过 | 待更新
- episode_01_script: 未开始 | 草稿 | 自检通过 | 已通过 | 待更新
- episode_01_dialogue_timeline: 未开始 | 投影中 | 校准通过 | 已通过 | 待更新
- episode_01_art: 未开始 | 制作中 | 已通过 | 待更新
- episode_01_director: 未开始 | 制作中 | 已锁定 | 待更新
- episode_01_video: 未开始 | 制作中 | 已完成 | 待更新
- episode_01_music: 未开始 | 制作中 | 已完成 | 待更新
```
每次恢复任务时,先读 `制作进度.md` 和现有文件,从第一个未通过或待更新的阶段继续。只有用户明确说“通过、确认、可以继续”等同义表达后,才能把对应状态写成 `已通过`。
旧项目若仍使用 `episode_01_script_dialogue`,恢复时根据现有剧本和时间轴拆分成上述两个状态。若旧项目采用“时间轴先行”,保留已确认的准确台词和时间数据作为迁移输入,但先建立或校准剧本真源;后续修改一律先改剧本,再重建时间轴投影。
统一目录:
```text
<项目>/
├── 制作进度.md
├── 剧名-Brief.md
├── 剧名-分集概要.md
├── 音乐素材复用台账.md
├── 第1集/
│ ├── 剧名-第1集剧本.md
│ ├── 剧名-第1集字幕台词时间轴.md
│ ├── 美术设定集/
│ │ ├── 人物三视图/
│ │ ├── 道具三视图/
│ │ └── 场景概念图/
│ └── 视频制作/
│ ├── 导演/
│ │ └── 片段/
│ ├── 分镜参考图/
│ ├── 提示词/
│ ├── 片段/
│ ├── 配音/
│ │ └── 音色表.md
│ ├── 音乐/
│ │ ├── 配乐设计.md
│ │ └── 音乐复用记录.md
│ └── 任务记录/
├── 第2集/
└── 第3集/
```
不要把某一集的剧本、台词、美术、提示词或片段散放在项目根目录。全剧 Brief 和分集概要留在根目录。
## 阶段一:写 Brief
进入本阶段时,读取 [短剧创作_Brief模板.md](references/短剧创作_Brief模板.md) 和 [短剧情绪表演与节奏规则.md](references/短剧情绪表演与节奏规则.md) 的 Brief 要求。
- 根据用户的主题方向填写模板,另存为 `剧名-Brief.md`。Brief 只确认方向,不写分集剧情或完整剧本;未知信息保留 `[待定]`。
- 用户给了集数、单集时长、平台、受众或禁区时原样纳入。
- 写清观众主情绪、主角常态与爆发态、表演写实或夸张程度、最高情绪强度以及禁用的表演方式;不能只写“情绪强烈”。
- 起稿后简要列出文件,询问用户是否通过或需要修改;不通过则按意见修改后再次确认,循环到明确通过。
Brief 通过后更新 `制作进度.md`,再进入阶段二。
## 阶段二:写全剧分集概要
仅在 Brief 已通过后进入。读取 [短剧与漫剧爆款写作套路总结.md](references/短剧与漫剧爆款写作套路总结.md) 和情绪规则的分集概要要求,并以获批 Brief 为边界。
- 把全部集数写进同一份 `剧名-分集概要.md`。每集至少写清:本集即时目标、开场事件、主要压力、主角具体行动、可见结果、场前场后状态变化、集尾观看问题;情绪线(主情绪、升级、峰值、释放、残留)按情绪规则的概要标准写。
- 全剧选择一套主骨架;每集执行“承诺—压力—行动—结果—变化—新钩子”闭环;一集只保留一条即时目标。
- 集数和单集时长服从 Brief;不要把示例中的 3 分钟或 10 集当成固定默认值。
- 概要草稿完成后,以 `OUTLINE_CHECK` 模式调用 [`short-drama-screenplay-writing`](../short-drama-screenplay-writing/SKILL.md) 做只读可写性检查(人物是否有可执行追求、反对筹码、造成结果的选择、局部兑现和准确跨集交接)。检查不新增确认关卡;发现问题由本阶段修改概要后再交用户确认。
完成后询问用户是否通过;未通过则只修改概要。明确通过后更新进度,再制作第 1 集。
## 阶段三:第 N 集剧本与台词时间轴
每一集都重复本阶段。进入时完整读取并执行 [`short-drama-screenplay-writing`](../short-drama-screenplay-writing/SKILL.md);场景设计、剧本正文、对白精修、时间轴投影和时长返修都由它负责,本技能只负责项目状态、文件位置和用户确认。
调用时提供:已通过的 Brief、全剧分集概要和当前集条目;上一集获批结尾状态(第一集则提供故事起始状态);单集目标时长、平台、画幅、内容禁区和已知生产限制;已锁定的人物、关系和世界规则;返修时附现有剧本、时间轴及用户意见。
在 `第N集/` 中维护两份主产物,权威关系固定:
1. `剧名-第N集剧本.md` 是剧情、动作、说话者、准确台词和顺序的唯一可编辑真源;
2. `剧名-第N集字幕台词时间轴.md` 是从剧本生成的生产投影,只分配时间槽和生产备注。
时间轴发现超时、过密或表演空间不足时走 `TIMING_REWRITE`:先回剧本源文件删改,再重建时间轴;不得只在时间轴中改词。编剧技能返回 `UPSTREAM_CHANGE_REQUEST` 时,若问题会改变已通过的主角、结局承诺、关系定义、世界规则或制作尺度,停在本阶段向用户说明,不静默改写上游。
剧本与时间轴一起交付,共用一个写作确认关卡。用户提出修改时走 `REVISE_EPISODE`:先改剧本真源,再重建时间轴。用户明确通过后,把 `episode_NN_script` 和 `episode_NN_dialogue_timeline` 同时标记为 `已通过`;通过前不生成美术、导演卡或媒体。
## 阶段四:第 N 集美术设定
剧本与台词时间轴通过即视为用户授权直接制作本集美术,不额外增加前置确认;只有素材定义存在会显著改变故事的歧义时才停下询问。先读取情绪规则的美术要求,再读取并执行:
- [`character-three-view`](../character-three-view/SKILL.md):从本集剧本提取人物、关键道具和主要场景,规定版式、命名与逐图验收。
- 生图执行器:优先用当前 Agent 自带的生图工具或技能(如 Codex 的 ImageGen)实际生成或修改位图,保存到 `第N集/美术设定集/` 对应子目录;环境没有自带生图能力,或用户明确点名用 Cursor 生成时,才改用 [`cursor-image-gen`](../cursor-image-gen/SKILL.md)。无论用哪个执行器,都须按 `character-three-view` 的清单、版式、命名与目录出图并逐图验收;换执行器不新增确认关卡。
先锁定主角基准形象,再生成其他人物、道具和场景;可并行生成彼此独立且共享已验证基准图的资产。不制作表情与表演参考图(原因见核心规则第 7 条)。场景概念图只画场景:主要角色一律不进画面,与剧情无关的背景群众可留,完整定义见 `character-three-view`。每张生成后都打开验收,不合格按配套技能的重试边界处理。
完成后列出全部素材并询问用户是否通过;用户要求改图时保留旧版命名,修改后再次确认。美术未通过不得开始视频。
## 阶段五:第 N 集视频与配乐
仅在本集美术已通过后进入。视频生成、音乐处理和 TTS 配音(如需)交错执行:视频任务进入等待或轮询后,立即利用等待时间处理配乐与配音,不把长耗时任务串行等待。
### 导演层
调用 [`h3-short-drama-director`](../h3-short-drama-director/SKILL.md),提供获批 Brief、全剧概要、本集台词时间轴、剧本、美术和上一个已接受结尾。由它检查 `SOURCE_CONFLICT`,输出 `视频制作/导演/01-导演镜头表.md`(顶部含本集视觉风格块)、`02-连续性与参考素材台账.md`、`片段/NN-导演卡.md`、`03-校准片方案.md` 和 `04-样片与返修记录.md`,把时间轴拆成 5–15 秒片段,并逐镜头给出 `VISIBLE_CAST` 精确实例数。冲突不改变故事含义或角色身份时不新增用户确认关卡。
### 分镜参考图
默认不生成分镜参考图:动作、表演、运镜和时序始终由 H3 prompt 决定。仅当用户明确要求本集配备分镜参考图时才制作:按用户指定的片段范围与数量,按阶段四的生图执行器约定(优先 Agent 自带生图,用户点名 Cursor 时用 `cursor-image-gen`)生成单帧参考图存入 `分镜参考图/`,逐张验收。用户未给规格时按最小可用执行:相关片段默认 1 张独立单帧,同一角色在图中只出现一次,人物保持中性静态姿态,画幅与成片一致。用户要求分镜的片段,其导演卡加入 `STORYBOARD_LIMIT`:只参考静态构图与空间关系,不把图当动作关键帧或姿势模板;与用户要求冲突时,以用户要求为准。
### 片段提示词
不设中间 brief 文件:由 [`h3-prompt-writing`](../h3-prompt-writing/SKILL.md) 直接读取每张已锁定的导演卡,连同 `01-导演镜头表.md` 顶部的视觉风格块、`SOURCE_LINES` 指向的剧本与时间轴段落以及美术素材,生成 `视频制作/提示词/NN.txt`。导演卡必须携带技术信封(workflow、prompt_mode、画幅、分辨率、参考图上传顺序)和精确角色计数、`IDENTITY_CONTINUITY`、`DUPLICATION_GUARD`、`MOTION_AUTHORITY: H3_PROMPT`,用户要求分镜的片段携带 `STORYBOARD_LIMIT`。精确计数和防复制约束必须进入最终提示词正文,不能只留在导演卡中。
### 配乐设计
MiniMax H3 生成的视频自带音轨(对白、音效与 H3 自己生成的音乐),独立配乐是可选增强而非必需品。根据已通过的剧本、时间轴和导演方案制作 `视频制作/音乐/配乐设计.md`:逐个 cue 列出剧情用途、进入/退出时间、情绪方向与强度曲线、速度节拍、核心音色配器、加压/抽空/爆发/余波点、是否需精确卡点、对白密度和建议音量。先写 cue 需求,不要先写生成提示;默认 1–3 条可跨集复用的无主唱器乐,只有用户明确要求时才用主唱音乐。
### 跨集音乐检索与复用
对每个 cue 按“本集已验收音频 → 前 `1..N-1` 集 `视频制作/音乐/` → `音乐素材复用台账.md`”的顺序检索,结果写入 `视频制作/音乐/音乐复用记录.md`。按剧情功能、情绪强度弧线、节拍、音色、对白密度和可裁剪性判断;时长不同不自动判为不合适,能本地适配就复用。每个 cue 标记 `直接复用 | 适配后复用 | 待生成`;存在合适候选时不得再生成“备选版本”。采用复用时把源文件复制到本集 `音乐/` 并清晰命名,不修改前一集的源文件;记录来源集数和相对路径。台账记录素材来源、时长、情绪功能、节拍、可循环性、技术验收和已复用集数,新生成且验收通过的音乐立即入账。只有 `待生成` 的 cue 才调用 [`minimax-music-gen`](../minimax-music-gen/SKILL.md)。
### 旁白与角色配音(TTS)
MiniMax H3 生成的片段自带对白与音效,TTS 配音是可选增强:只有剧本、台词时间轴或导演方案明确出现旁白/画外音,用户点名要特定声线(如甜妹音、低沉旁白),或 H3 生成音轨的声线验收不达标需要替换对白时,才进入本节;不默认为每段视频配 TTS。
- 进入时读取并执行 [`qwen3-tts`](../qwen3-tts/SKILL.md):VoiceDesign 文字描述声线(旁白和虚构声线首选)、CustomVoice 内置音色+风格指令(跨集固定主持人声)、VoiceClone 参考音频克隆(用户给的人声样本)。
- **声线一致性**:每个角色/旁白者的音色定义(描述文本或参考音频路径)写入 `视频制作/配音/音色表.md`,一经用户接受跨集复用不变;换声线属于创作变更,需向用户确认。
- 台词字数按台词时间轴对应槽时长控制(中文约 4–5 字/秒),生成文件存 `视频制作/配音/NN-角色或旁白.flac`,逐条 ffprobe 核时长。
- 与视频批次共用同一 AutoDL 实例开机窗口(TTS 与 H3 同机),在视频轮询等待窗口内生成,绝不单独开关机。
- 配音混音属于关机后的本地活:与配乐一起按混音规则混入,旁白不盖角色对白。
- 实例缺 Qwen3TTS 节点或生成失败时按 `qwen3-tts` 的缺失表降级:交付自带 H3 音轨的母版,配音文件标记待更新并说明原因,不伪装完成。
### 校准片与批次生成
先由 [`minimax-h3`](../minimax-h3/SKILL.md) 按校准片方案生成校准片,导演验收通过并锁定成功的表演、运镜、参考和声音策略后,再提交其余批次。每段生成后把创意裁决和返修变量写入 `视频制作/导演/04-样片与返修记录.md`;结果存 `视频制作/片段/NN.mp4`,任务信息存 `视频制作/任务记录/`。连续性依赖上一段真实结果时,标记 `OBSERVED_PREVIOUS_END`,待上一段获准后据实锁定。轮询等待窗口内完成音乐复用、适配和缺口生成;多个待生成 cue 可在不触发限流的前提下有限并发。
使用 [`autodl-app-instance`](../autodl-app-instance/SKILL.md) 时:保存实例 UUID,视频批次只开机一次,全部视频任务进入终态并处理完后在 `finally` 路径执行一次 `off --wait`;不为音乐单独开 GPU 实例,用户明确要求保持开机时例外。
### 拼接与混音
按编号拼接无配乐母版 `剧名-第N集.mp4`:可直接流复制时先检查时间戳,有音频时间戳或兼容性问题再重编码为 H.264/AAC;保留母版不覆盖。再按配乐设计把音乐混入对白/音效,输出 `剧名-第N集-配乐版.mp4`:关键台词前降乐、抽低频或短暂断乐让表演落地,冲突和集尾钩子逐步加压,爆发后保留余波;不满铺、不盖对白和关键动作音效。
### 验收与交付
先由导演技能逐段给出 `KEEP | FIX_IN_POST | REGENERATE | REWRITE_PROMPT | SPLIT_SEGMENT` 创意裁决,再验收两个版本。创意层查表演因果、走位、运镜动机、光线声音是否服务本段、反应与余波、连续性;技术层查片段顺序、解码、时长、画幅、对白清晰度、音乐进入点、爆音与运镜真实性(应看到戏剧原因驱动的连续运镜,不能是多张参考图之间的机械切换;使用了分镜参考图的片段,逐张核对静态空间职责是否命中)。逐段抽帧检查角色进入、快速运动、遮挡解除和片尾等高风险时刻,对照 `VISIBLE_CAST` 核对人数与身份;任何一帧出现同一具名角色的多个实体、相同脸群演、无叙事依据的镜像副本或身体分裂,该片段验收失败,必须重生成。返修一次只改一个主要变量,简化顺序按导演技能的 take review 执行。情绪双通道验收(静音看画面、只听声音)按情绪规则执行,任一通道不成立不算完成。
- 交付无配乐母版、配乐版成片、音乐素材、片段清单和制作记录(用户要求分镜时一并交付分镜参考图),报告本集 `直接复用 / 适配复用 / 新生成` 的 cue 数量,并询问修改方向。修改影响剧本、美术、分镜或配乐进入点时,退回相应阶段重新确认。`TOKENHUB_API_KEY` 未配置或 TokenHub 不可达时按上表降级:跳过待生成 cue,交付自带 H3 音轨的母版并明确说明未生成清单与配置方法;复用已覆盖全部 cue 时正常交付。任何时候不因音乐失败伪装完成配乐版。
+ 交付无配乐母版、配乐版成片、音乐素材、片段清单和制作记录(用户要求分镜时一并交付分镜参考图),报告本集 `直接复用 / 适配复用 / 新生成` 的 cue 数量,并询问修改方向。修改影响剧本、美术、分镜或配乐进入点时,退回相应阶段重新确认。AutoDL 实例不可用(无 Token / 无库存 / 音乐生成失败)时按上表降级:跳过待生成 cue,交付自带 H3 音轨的母版并明确说明未生成清单与后续补生成方法;复用已覆盖全部 cue 时正常交付。任何时候不因音乐失败伪装完成配乐版。
## 配套技能的加载规则
| 阶段 | 配套技能 | 职责 |
|---|---|---|
| 分集概要与单集写作 | `short-drama-screenplay-writing` | 概要可写性检查、单集契约、场景设计、剧本与对白、时间轴投影、时长返修和生产变更分级 |
| 美术 | `character-three-view` | 资产清单、三视图/场景规范、不做表情参考图、场景图人物禁令、命名、验收 |
| 美术与分镜图(备选执行器) | `cursor-image-gen` | 环境无自带生图能力或用户点名 Cursor 时,执行位图生成、参考图编辑、批量导出 |
| 视频导演 | `h3-short-drama-director` | 全集视觉风格块、戏剧动作切段、导演镜头卡(动作/表演链、动机化运镜、精确人数、防复制)、连续性与参考台账、校准片、创意样片验收 |
| 视频提示词 | `h3-prompt-writing` | H3 提示词结构、参考标签、角色唯一性英文约束、情绪起止与可执行表演变化 |
| 视频生成 | `minimax-h3` | 工作流发现、素材上传、提交、轮询、下载、视频检查 |
| AutoDL 视频批次 | `autodl-app-instance` | 实例开机、等待 ready、批次结束关机 |
| 单集配乐与混音 | `minimax-music-gen` | 仅补生成跨集复用未覆盖的无主唱背景音乐,下载并检查音频 |
| 旁白与角色配音 | `qwen3-tts` | 剧本或导演方案要求旁白、画外音或特定声线对白时生成 TTS 语音;三种音色控制模式,声线表跨集复用 |
当前步骤实际需要的配套技能不可用时,按依赖级别处理,并当场向用户说清「缺什么、怎么配、有无替代」;不伪装已生成素材或成片,不擅自切换到会产生额外费用的服务:
| 级别 | 依赖 | 缺失时 |
|---|---|---|
| 硬必需 | `AUTODL_TOKEN` 与 AutoDL 实例(视频生成无替代路径) | 阻断视频阶段,转达脚本报错中的申请与存储指引(推荐 `~/.config/autodl.env`),不启动任何生成任务 |
| 默认可换 | 生图执行器(优先 Agent 自带生图,如 Codex ImageGen;备选 Cursor,约定见阶段四) | 自带生图与 Cursor 均不可用时,引导 `cursor-agent login` / `CURSOR_API_KEY`,或按用户点名的其它生图工具切换 |
- | 可选增强 | TokenHub 音乐 API(`TOKENHUB_API_KEY`;H3 视频自带音轨) | 跳过全部 `待生成` cue(复用 cue 照常混入),直接交付自带音轨的母版;交付说明列明未生成 cue 清单、原因与配置方法,`episode_NN_music` 标记待更新 |
+ | 可选增强 | `minimax-music-gen` 音乐生成(同一 AutoDL 实例与 Token;H3 视频自带音轨) | 跳过全部 `待生成` cue(复用 cue 照常混入),直接交付自带音轨的母版;交付说明列明未生成 cue 清单、原因与后续补生成方法,`episode_NN_music` 标记待更新 |
| 可选增强 | Qwen3-TTS 节点与模型(同一 AutoDL 实例;H3 视频自带对白) | 跳过全部旁白/配音,交付自带 H3 音轨的母版;交付说明列明未配音清单与原因,配音标记待更新 |
依赖凭证的阶段进入前先做能力自检(读环境变量或跑对应脚本的检查命令);除音乐与配音外不得静默跳过任何环节。
## 确认关卡
只问当前关卡,保持简短,问完结束当前轮次等待回复;等待时不提前生成下一阶段文件或启动外部服务。四个关卡依次是:Brief、分集概要、剧本+台词时间轴、美术;成片交付后询问修改方向。