# Short Drama Produce

在创作者明确确认后，执行短剧项目的图片、视频、TTS/配音或时间线音乐生产任务，并把结果与精简运行记录落回项目。用户说“生成这张图/这段视频/这句配音/这段配乐”“开始跑图/跑...

- Repository: https://github.com/zenstory-ai/drama-skills (3625 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add zenstory-ai/drama-skills --skill short-drama-produce -g -a claude-code -y`
Codex: `npx skills add zenstory-ai/drama-skills --skill short-drama-produce -g -a codex -y`
Cursor: `npx skills add zenstory-ai/drama-skills --skill short-drama-produce -g -a cursor -y`
Gemini CLI: `npx skills add zenstory-ai/drama-skills --skill short-drama-produce -g -a gemini-cli -y`

## Description

在创作者明确确认后，执行短剧项目的图片、视频、TTS/配音或时间线音乐生产任务，并把结果与精简运行记录落回项目。用户说“生成这张图/这段视频/这句配音/这段配乐”“开始跑图/跑视频/合成语音/生成音乐”“把已确认提示词送去生产”，或要求批量执行已确认媒体任务时使用；不负责创作提示词、镜头、台词、歌词或声音身份，也绝不把预览、继续、预算说明或既有接受状态当作本次付费生产确认。

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 确认后生产

本技能把已经写好的生产规格送到运行环境配置的 adapter。图片提示词归
`$short-drama-image-prompts`，视频提示词归 `$short-drama-video-prompts`，台词归
`$short-drama-write`，声音身份归 `$short-drama-assets`。

## Quick Start

只在用户明确要求实际生成后，从当前 `图片提示词.md`、`分镜.md` 或 `视频提示词.md` 中
取出本次提示词，建立一个有边界的运行 job。creator-first job 的 `source` 必须指向拥有这条提示词的
当前 Markdown，`source_entry` 必须点名该文档允许的二级标题：`图片提示词.md` 用 `IMG-*`，
`视频提示词.md` 用 `MOTION-*`，`分镜.md` 用 `SHOT-*`（modality 为 `image`，正文取该镜的
`### 冻结关键帧提示词`）。此选择器只提取首帧；尾帧需先由图片提示词阶段建立独立 `IMG-*` 状态图条目，
再从 `图片提示词.md` 准备 image job。创作者也可以提供已有起始帧, , 在自己的工具里出图再放进项目同样成立，图片始终不进项目时走分镜的 `PLAN-...`；
产出落在 `剧集/<EP>/制作成果/images/` 后，分镜 owner 才能把它绑成 `用途：起始帧` 的 `REF-...`。存在真实参考图时，
还必须逐张填写 `reference_bindings` 的槽位、顺序、路径、中文名、用途以及允许/禁止控制范围；
建立 job 时按当前文档的 `用途` 选择供应商 role，写入 `reference_bindings[].role`；
内置视频 adapter 读取这个 role，只接受已实现的取值
（MiniMax 为 `first_frame`/`last_frame`/`reference_image`/`reference_video`/`reference_audio`，
Seedance 也接受这五种 role，具体组合依账号配置的型号而定）；带参考图却没有绑定的 job 会直接失败，不猜测 role。
本地图片由内置 adapter 按 base64 data URI 直接送出，不需要自建上传服务。
`MOTION-*` 的「参考音频」行同样逐条进 `reference_bindings`，排在图片之后、role 固定为 `reference_audio`、`character` 照抄该行的 `角色`；
adapter profile 没有声明接受 `reference_audio` 时 `run` 在提交前失败，见
[adapter-contract.md](references/adapter-contract.md#adapter-config)。
需要把条目中的 `PLAN-...` 图片作为生成输入时，`prepare` 会要求先把真实文件放进项目、改写成
`REF-...`。直接从 `分镜.md` 绘制该 SHOT 自身首帧时，选择器可跳过 PLAN 槽位，因为本次生成
使用冻结关键帧正文，不发送创作者在项目外准备的那些图片；已有 REF 绑定仍须逐项一致。
这项豁免要求跳过 PLAN 后剩余 REF 的顺序仍从 1 连续；否则先交分镜 owner 调整源声明顺序，
不能只在 job 中重编号。生产接口还要求参考路径唯一：创作上同一图片可有两个用途槽位，但同路径
双槽目前不能提交。由负责技能与创作者决定修订参考职责或等待接口支持，不在 job 中擅自合并或漏槽。
`references` 可以省略并由绑定顺序生成，也可以作为相同顺序的显式镜像。输出放在
`剧集/<EP>/制作成果/`；这个 job 是生产工具的临时输入，不是第六份创作文档：

```bash
python3 {技能目录}/scripts/production_tool.py prepare <project> --job <临时-job.json>
```

先展示 `prepare` 的完整预览；此时不会调用供应商。

## 硬闸门

每次生产都必须经过以下四步，顺序不可合并：

The rest: https://github.com/zenstory-ai/drama-skills/blob/HEAD/skills/short-drama-produce/SKILL.md
