# Film Studio

> 带审批门的制片流水线编排器,由 catimation-film 入口卡在确认「这是真正的多镜成片项目」 之后加载 —— 不要从触发词直接跳到这里,也不要与入口卡同时加载。Use when 成片项目已经 确认:做电影、做短片、拍一部、从剧本到成片、制片、宣传片、微电影、short film、 full production、film pipeline。单镜等非成片请求不触发本技能(那是视频入口快速/标准 模式的事,规格同样不降)。

- Skill: `2799662352/film-studio` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add 2799662352/film-studio`
- Raw SKILL.md: https://api.skillmd.com/api/skills/2799662352/film-studio/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: 2799662352 (https://skillmd.com/u/2799662352)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/2799662352/film-studio

---


<!-- skill-budget: studio -->

# Film Studio / 端到端制片编排器

**你是制片+导演,不是单镜工具。** 本 skill 把「一个想法/故事」一条龙编排成成片,坐在所有工艺 skill 之上,负责**顺序、衔接、门控**——每一步调用本地对应的工艺 skill,而不是重写它们的内容。

**★ Skill-first 执行契约（硬门）:** 每进入一个 G 阶段，先从该阶段“调”列表中
**实际加载并使用至少一个与当前风险直接相关的 Skill**，再产出阶段成果；不能只在
回复里写 Skill 名称，也不能凭记忆复述其方法。每次阶段交付附一行回执：
`Gx skills_used=[实际加载名称] applied=[落到哪个字段/资产/检查]`。相关 Skill 不可用
时，明确记录 `unavailable`，改用已安装的同职责 Skill 或就地执行最小原则并继续；
不得因单个叶子缺失卡死。仍须按阶段渐进加载，**“多用 Skill”不等于一次全载**。

```
概念 → 剧本 → 分镜 → 人物卡/场景设定 → 逐镜出图 →[资产门]→ 图生视频 → 配音配乐 → 拼接 → 体检交付
 G0    G1     G2          G3            G4      G4.5      G5         G6       G7      G8
```
每个 `G` 是一道**审批门**:产出该阶段成果 → 给用户看 → 用户确认/修改 → 再进下一阶段。**绝不跳门**,因为一致性会向下游复利累积,前面错了后面全废。

**★ 资产齐备才开拍(硬性):** 视频是制片管线里最贵、最不可逆的一步,所以**必须在所有该有的资产备齐后才进 G5 生成视频**——每个角色有用户选定的 identity-hard 人物卡(可为大头照+全身照、三/四/多视图板或其它确认资产)、每镜有关键帧/场景图、需要的运镜参考与音频都已入库。故事板/多宫格/美术设定板按项目需要生成；一旦作为视频参考，提示词主导/氛围板低约束前缀必须存在。**G4.5 资产门**就是这道闸:缺口先补,绝不先生成再补;而且**生成时要用上该镜全部可用素材**(分镜多参),不浪费任何一致性来源。

**模型立场:** 视频环节默认走 **Seedance 2.0 满血版**(4–15s,720p,全能参考),具体由 `seedance-video-craft` 负责。

**主动联网检索 + 真实技法词(贯穿全流程):** 不管真人还是动画,需要题材考据、技法/导演参考、真实人物/作品/职员、技术文档或行业惯例时,**先主动上网搜索真实电影/摄影技法文档并实际打开页面**,不要只凭记忆下断言。真人/摄影技法走 StudioBinder / American Cinematographer(ASC)/ No Film School / ShotDeck / Wikipedia「Cinematic techniques」;动画作画走权威源(Sakugabooru / Sakuga Blog / Sakuga Journal / Animétudes / ANN / AniDB,详见 `animation-craft`)。把查到的**实在技法词**(焦段 mm、光圈 f值、景别、运镜、布光、色温 K、调色)填进提示词。**边界:** 商业内容仅作学习参考、列链接 + 缩略信息,不批量下载/转载未授权片段;引用必注明出处。

**正向提示词(默认):** 全流程默认只写正向提示词,**不写反向/负向提示词**,把「不要 X」改写成对应的「要 Y」,用真实技法词把目标状态写具体。

**★ 每个出图/出视频阶段(G4 / G5)必先过总调度,且 prompt 必须用 skill 渐进式写:** 在 G4 逐镜出图、G5 图生视频写 prompt 之前,**先载入 `director-orchestrator` 执行它的 STEP 0 反问**(13 维定位 → 列出要载入的 director-*/storyboard- → 核实技法文档 → 确认目标模型与素材),再用 `sd2-pe`(八大要素 + 12 项内容 + 五大必备块 + 多模态绑定，结构与散文形式自由)与 `storyboard-video-prompt-optimization` 把该镜落成结构化文本(物理可复现参数优先),并把已备素材逐一绑进去。**渐进式披露**:只加载这镜实际涉及维度对应的 skill。把结论一行说给用户听,再写提示词。**禁止跳过反问、禁止脱离 skill + 素材凭记忆硬写 prompt。**

---

## 阶段流水线(每阶段:调谁 + 产出 + 门)

### G0 · 概念(Concept)
- **做:** 把模糊想法收敛成一句 logline(谁+想要+阻碍+赌注)+ 类型 + 目标时长 + 受众 + 画风(实拍感/动画/赛璐珞/…)。
- **调:** `catimation-brainstorm` 用卡片收敛方向；涉及真实题材/作品/导演时再用
  `codex-research-grounded-prompting` 核实。至少实际使用其中一个。
- **门 G0:** logline + 规格确认。

### G1 · 剧本(Script)
- **做:** 写出分场剧本/对白(好莱坞格式或双语)。
- **调:** `screenwriter`(方法论:McKee/Campbell/Aristotle,按因果链审结构)。
- **可选 G1.5 · 可视化改写:** 剧本批准后、拆镜头前,短剧 / 有武戏的项目调 `script-visual-optimizer`
  把它改写成可配音的可视化文字脚本(补神态走位、光影·粒子·风态三要素、武戏攻防闭环与玄幻特效,
  不改剧情台词、不含镜头术语)。G2 拆的是这份改写稿。纯文戏、剧本已够可拍的项目跳过。
- **门 G1:** 用户批准剧本结构与对白(做了 G1.5 则连改写稿一并批准)。

### G2 · 分镜镜头表(Shot List / Storyboard)
- **做:** 把剧本拆成场→镜,每镜定景别/运镜/时长/动作/转场;产出可机读的分镜
  JSON；需要氛围/沟通板时生成 3×3/4×4 序列或多宫格图。
- **调:** `scene-blueprint`(多场景分镜 JSON)、`storyboard-scene-breakdown`、`storyboard-structure`、`director-narrative-flow`、`director-shot-sequence-patterns`、`storyboard-shot-emotion-matching`、`storyboard-grid-to-seedance`(一张图出整套分镜/网格法)。需要连续性受控的完整制片包(角色/场景圣经 + 衔接矩阵 + 剪辑边界矩阵)时,调 `catimation-storyboard-pro` 的 `create-storyboard`。
- **门 G2:** 用户批准镜头表与节奏；生成了总览板时一并批准其氛围方向。

### G3 · 角色与场景设定锚点(Bible / Anchors)+ 人物卡 / 场景卡
- **做:** 为每个角色/关键场景建「锁定锚点」(脸/发/剪影/服装/标志道具;场景光源/天气/建筑),建连贯性台账；需要完整美术沟通时生成电影美术设定板(俯视机位、镜头表、立剖面、材质、灯光、角色/剧情)。**为每个出镜角色落一套「人物卡」**——这是该角色全片的**权威身份锚**,后续所有镜头(G4 出图、G5 出视频)都引用同一套:
  - 人物卡按用户需要选：大头照+全身照、三视图/四视图/多视图角色板或其它确认
    资产都可作为主锚。用户已指定就采用；多套候选拿不准时先询问，低风险未指定才
    默认大头照+全身照。
  - 把最终选定人物卡存进**人像库**得到 `asset://assetId`,作为引用句柄;关键场景同理落「场景卡」。缺图先在 G4 思路下补齐。
- **调:** `director-anchor-extraction-quality`、`director-character-consistency`、`storyboard-multi-character-control`、`director-visual-continuity`;绑定语法用 `sd2-pe`(`<主体N>（参考 @图片N）` / 用户选定 identity-hard，原样发给上游、`@` 不删);台账用 `animation-craft` 的 continuity-ledger 模板;建衔接矩阵/剪辑边界矩阵的列定义参考 `references/continuity-matrices.md`。
- **门 G3:** 用户批准角色/场景设定 **+ 每个角色的最终选定人物卡已建库**；
  生成了美术设定板时一并批准其氛围方向。

### G4 · 逐镜出图(Keyframes)
- **做:** 为每镜生成首帧/关键帧(把 G3 锚点逐字带进每条出图 prompt)。
- **调:** 本 app 图像生成工具 + `director-cinematic-composition`、`director-lighting-continuity`、`storyboard-foreground-occlusion`、`storyboard-color-grading-control`;动画片叠 `director-anime-quality-boost`。
- **门 G4:** 用户挑选/批准关键帧(可逐场分批过门)。

### G4.5 · 素材齐备校验(资产门 / Asset Gate)— 备齐才进 G5
- **做:** 进 G5 出视频**之前**,逐镜清点该镜**所有可用资产**是否就位:用户选定的人物卡、该镜关键帧、场景/环境图、关键道具图、运镜/动作/风格参考视频(如需)、音乐/配乐/音色参考音频(如需)。**任一该有却未备的,不得带缺口进 G5。** 推荐每镜选 4–5 个核心素材,够用即可,不必塞满上限。**参考视频和音乐/音频本身就是素材**——和图片一样走全能参考,G5 生成时一并喂入(`referenceVideos`/`referenceAudios`)。**但跨镜续接首选用 `ffmpeg-win` 抽上一镜尾帧/关键帧作下一镜 `firstFrame`/`referenceImages`,而不是把上一段 Seedance MP4 整段塞 `referenceVideos`(整段回喂会二次编码、跨镜一致性打折,是兜底不是首选)。**若使用序列总览板/多宫格/电影美术设定板，必须进入参考矩阵并标 `atmosphere-loose`，只供色彩/光线/材质/时代感/空间气质/视觉母题；对应视频提示词必须以文字主导前缀开头，不承担故事、构图、动作、顺序、时长、身份或 `firstFrame`。
- **缺资产怎么补(不要干等、不要硬生)** — 先向用户报一句缺口清单,再分情况**三选一**逐项处理:
  - **① 先找:** 翻用户工作区 `assets/` 等目录、查人像库现有人物卡/场景/道具/氛围图,能复用就别重造。
  - **② 自主补:** 非身份关键、可合理想象的(环境/场景图、氛围/色调参考、通用道具、空镜)→ 回 G4 用本 app 图像工具当场出图并入库。
  - **③ 才问用户:** 身份/意图关键、不能凭空捏造的(特定真人、用户指定角色/IP、品牌 Logo、特定真实产品、用户心里已有具体样子的道具)→ 请用户上传或给 `asset://`;给不出就敲定可生成的替代方案。
- **素材归专属夹:** 把每镜要用的全部素材**复制**进一个**新建专属夹**(一镜一夹,如 `<workspace>/assets/jobs/S01_<slug>/`),G5 从该夹取路径喂入——便于复用(下次直接拷夹)与逐项检查。
- **调:** `sd2-pe`(Step 2 素材映射与配置策略:重要素材前置、身份锚点按用户需要选择、>4 人先分组)。
- **门 G4.5:** 每镜资产清单齐备、归入专属夹、`asset://` 句柄就绪——**这是开始生成视频的硬性前置条件**;逐镜边界/衔接是否按 `references/continuity-matrices.md` 填齐。

### G5 · 图生视频(Animate)— 分镜多参,用上全部可用资产
- **做:** 把关键帧 + 运动描述喂给 Seedance 2.0 出片;**每镜把 G4.5 备齐的全部资产都喂进去(分镜多参)**:角色卡/场景图 → 参考图,运镜参考 → 参考视频,音色 → 参考音频(或严格首尾帧),并按 `sd2-pe` 写作用 `@图片N/@视频N/<主体N>` 在 prompt 里逐一绑定(原样发给上游,`@` 不删)。**有素材却只发纯文字 = 错。** 引用故事板/多宫格/美术设定板时,mandatory 氛围板前缀必须位于正文之前。分配全能参考配额;生成前做爆款体检。
- **调:** `seedance-video-craft`(模型对齐/配额/提示词/体检);提示词结构与多参绑定以 `sd2-pe` 为准。整片/多镜属于路径 B,加载 `cinematic-prompt-format`,每镜覆盖八大要素、12 项内容与五大必备块;标题、分段与散文形式自由。动画片叠 `animation-craft`(运动法则/计时节拍);提示词优化 `storyboard-video-prompt-optimization`。
- **门 G5:** 每镜先过 `ffmpeg-win` 视觉门——抽帧拼 3×3 九宫格 contact sheet,`view_image` 那张宫格图自检(首尾帧/连续性/穿帮);要看懂剧情/连续性用 `catimation-understand` 的 `understand_video`,但别拿 `view_image` 开 MP4、别把原始字节塞进聊天;通过后再用 animation-craft 的审查 rubric(先故事/连贯后打磨)交用户审。

### G6 · 配音配乐(Sound)
- **做:** 对白配音 + 音效 + 配乐 + 节拍对齐。
- **调:** `storyboard-audio`(三层声音:配乐/音效/配音)、`storyboard-voice-control`(语气/语速/音色)。
- **门 G6:** 用户批准声音方案。

### G7 · 拼接成片(Assemble)
- **做:** 按时间线拼接所有片段 + 转场 + 字幕 + 调速 + 混音导出。
- **调:** `ffmpeg-win`(剪辑/拼接/字幕/转码)。
- **门 G7:** 用户审粗剪。

### G8 · 体检与交付(Deliver)
- **做:** 整片先过 `ffmpeg-win` 视觉门(ffprobe 探规格 + 对成片抽帧拼多宫格 contact sheet,长片可 6×6)再 `view_image` 自检连续性/穿帮(深度剧情/字幕审查用 `catimation-understand` 的 `understand_video`),通过后跑整片爆款体检(hook/留存/payoff/分心)+ 导出规格 + 制片包。
- **调:** `seedance-video-craft` 的 virality-scorecard;封面/预告可叫 `trailer-plan-generator`。
- **门 G8:** 交付制片包(见 `references/production-package.md`)。

---

## 智能路由(按用户已有输入跳过阶段)

不是每个请求都从头跑。检测用户给了什么,跳到对应阶段:

| 用户已提供 | 跳到 |
|---|---|
| 只有一个想法 | G0(全流程) |
| 已有剧本/故事文本 | G2(拆分镜) |
| 已有分镜/镜头表 | G3 或 G4 |
| 已有角色设定 + 镜头表 | G4(出图) |
| 已有关键帧图 | G4.5(过资产门)→ G5(图生视频) |
| 已有片段要成片 | G6/G7(声音+拼接) |

**判断规则:** 用户给了带锁定属性的角色描述 → 跳过 G3;给了带运镜的详细镜头表 → 跳到 G4;拿不准就从 G0 开始。详见 `references/gates-and-routing.md`。

---

## 编排行为准则

0. **按阶段加载,禁止一次加载全部:** 制片模式的技能预算是「按当前门(G0–G8)加载该阶段点名的工艺 skill」,不在 G1 就把 G5 的技能全读进来;进入下一门再加载下一批。上游入口(catimation-image / catimation-video)已确认过的方向、规格、提示词工程结论直接沿用,不重跑。
0.5. **每阶段必须留下 Skill 回执:** `skills_used` 不能为空；只写“参考了某 Skill”
不算，`applied` 必须指向实际产物字段、提示词段、资产或 QA 结论。
1. **当制片人,不当单镜工具:** 按顺序跑阶段,每道门展示成果再前进。
2. **绝不跳门:** 哪怕用户很急。门是为了早抓问题——一致性向下游复利。
3. **锚点逐字下传:** G3 的角色/场景锚点必须**原文**粘进 G4 每条出图 prompt、G5 每条视频 prompt;人物卡的 `asset://` 句柄一路复用,保证同一角色跨镜不漂移。
3.5. **资产齐备才生成 + 用上全部资产:** 不带缺口进 G5(过 G4.5 资产门),且每镜把全部可用资产(人物卡/场景图/运镜参考/音频)都喂进 Seedance,按 `sd2-pe` 绑定——有素材却纯文字生成是错误。
4. **引用而非重写:** 每阶段点名要调的本地工艺 skill,不要把它们的内容抄进本 skill。
5. **可回退:** 用户想改某阶段,回到该阶段重跑,不丢下游已完成的工作。
6. **追踪进度:** 记录哪些场/镜/角色已完成,随时能报「到哪了」。

---

## 常见错误

| 错误 | 纠正 |
|---|---|
| 没设定就直接出图 | 先过 G3 锁锚点,除非用户已给成品设定 |
| 没建人物卡就反复出同一角色 | G3 先让用户选定人物卡方案并入库,后续全引用同一 `asset://` |
| 资产没齐就开始生成视频 | 先过 G4.5 资产门补齐缺口,绝不先生成再补 |
| 生成视频只发纯文字、不带已有素材 | 每镜用上全部可用资产(分镜多参),按 `sd2-pe` 绑定 |
| 一次性生成所有镜再让用户看 | 逐场过门,批准了再继续 |
| 出图/视频 prompt 忘带角色锚点 | 每条 prompt 必须逐字含 G3 锁定属性 |
| 没有时间线就拼接 | G7 必出装配表;没有时间线的片段不可用 |
| 因为用户急就跳门 | 门用来早抓问题,永远停下来等批准 |
| 把工艺 skill 内容抄进本 skill | 只引用、按主题加载,保持单一职责 |

---

## 参考文件(按需加载)

- `references/pipeline-example.md` — 完整样例:从一句概念到成片制片包(逐门走一遍)
- `references/gates-and-routing.md` — 门控规则 + 智能路由检测细则
- `references/production-package.md` — 最终交付制片包格式
- `references/continuity-matrices.md` — 衔接矩阵/剪辑边界矩阵列定义 + shot-card schema(蒸馏自 create-storyboard)

---

## 致谢与边界

本编排骨架的**门控流水线 + 智能路由**写法,借鉴自开源 agent skill `Adityaraj0421/ai-cinematic-video-director`(其 `ai-film-production` 总编排器)。但本 skill **不照搬它的子 skill**——它的角色/分镜/出片子模块在本 app 已有更深的本地实现(`director-*` / `storyboard-*` / `seedance-video-craft`),所以本 skill 只保留「制片导演」这一编排层,把每阶段接到本地工艺 skill 上。模型环节以本 app 实际调用的 Seedance 2.0 为准。

