# Script Forging

> 将成熟故事稳定转化为可拍摄执行的影视剧本、分镜方案与后续 AI/拍摄可复用的数字资产清单。适用于用户要求"故事变剧本、小说改剧本、生成标准剧本、分场大纲、剧本一稿、剧本化提示包、用 AI 写剧本、剧本转分镜、分镜表、逐镜头分镜、完整分镜、拍摄分镜、AI 视频逐镜、镜头脚本、镜头表、场景清单、道具清单、角色出场清单、数字资产清单"等任务。核心流程：故事原文 → 专业形态建议 → 剧本化提示包 → 分场大纲 → 标准剧本 → 自检修订 → 分镜生成 → 数字资产清单。

- Skill: `zhlmi/script-forging` (Agent Skill, multi-file: 7 files)
- Install (CLI): `npx skillmds@latest add zhlmi/script-forging`
- Raw SKILL.md: https://api.skillmd.com/api/skills/zhlmi/script-forging/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: zhlmi (https://skillmd.com/u/zhlmi)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/zhlmi/script-forging

---


# 剧本锻造 Script Forging

## 定位

这个 Skill 的任务是：**把成熟故事锻造成可拍摄执行的影视剧本、分镜方案与后续 AI/拍摄可复用的数字资产清单**。

它不输出演员读本、导演视听读本、制片摘要等"给人看"的开发材料——那些属于 `narrative-to-screen-reader`。本 Skill 的所有产物服务于剧本生成和拍摄执行。

默认前提：
- 用户提供完整故事、短篇小说、中长篇故事、剧情大纲、角色扮演整理稿等成熟文本；
- 用户目标是生成剧本，不是项目开发分析；
- 若用户已确认故事成熟，跳过大规模诊断，只做最小可行性确认。

## References（按需加载）

| 文件 | 用途 | 加载时机 |
|:--|:--|:--|
| `references/form-judgment.md` | 专业形态判断标准（长片/短片/剧集/短剧） | Step 1 生成形态建议时 |
| `references/prompt-pack-template.md` | 剧本化提示包 13 字段模板 + 结构比例规则 | Step 3 生成提示包时 |
| `references/scene-outline-template.md` | 分场大纲字段模板 + 边界约束 | Step 4 生成分场大纲时 |
| `references/script-format.md` | 剧本正文排版规则（场标题、对白、微信等） | Step 5 生成剧本正文时 |
| `references/shotlist-template.md` | 分镜表字段模板 + 生成原则 | Step 6 生成分镜时 |
| `references/asset-list-template.md` | 数字资产清单模板（角色/场景/道具/母题/服装状态） | Step 7 生成数字资产清单时 |
| `references/selfcheck-template.md` | 自检清单模板 + 修订优先级 + 二稿触发条件 | Step 5b 自检时 |

不要一次性加载全部 references。只在对应步骤加载需要的那个。

## 最高原则

1. **先控方向，再写剧本**：必须先有剧本化提示包，再写完整剧本，除非用户明确跳过。
2. **故事原文优先**：人物、关系、结局、关键场景、物件、母题、核心台词，以原文为最高依据。
3. **提示包是控制层**：提示包必须明确"必须保留、可以调整、绝对禁止、格式规则、自检标准"。
4. **分场先于正文**：默认先生成分场大纲，再写剧本正文。分场阶段不生成重场景卡，不提前进入分镜。
5. **剧本不是读后感**：输出必须落到场景、动作、对白、节奏。
6. **不擅自狗血化**：禁止新增原文没有的第三者、误会、车祸、绝症、强告白、强反转等俗套冲突。
7. **少解释，多行动**：内心独白、文学抒情优先转成动作、沉默、空间、物件、对白潜台词。
8. **输出即文件**：所有正式产物一律写入 `.md` 文件；会话中只给摘要和链接。

## 默认工作流

### Step 1：确认任务边界与专业形态

#### 1a. 确认任务边界

先判断用户要的是哪一种：

- **直接剧本生成线**：故事 → 提示包 → 分场 → 剧本 → 自检 → 可选分镜 → 可选数字资产清单。
- **只要提示包**：故事 → 剧本化提示包。
- **只要分场大纲**：故事 + 提示包 → 分场大纲。
- **剧本修订线**：已有剧本 → 对照原文/提示包自检修订。
- **分镜执行线**：已确认剧本 → 分镜表。
- **资产固化线**：已确认剧本/分镜 → 角色、场景、道具、母题、服装状态等数字资产清单。

#### 1b. 专业形态建议

加载 `references/form-judgment.md`。

必须先判断故事更适合哪种影视形态，并给出明确推荐（强推荐 / 可行 / 不建议）。**不要只把选择权抛给用户**。用户拥有最终决定权，但 AI 必须承担专业判断责任。

#### 1c. 🔴 CHECKPOINT · STOP：形态确认

完成形态建议后，必须暂停，等待用户确认最终形态再继续。

例外：用户已明确指定形态并要求不要停；或用户明确授权"按你的专业判断继续"。

### Step 2：最小可行性确认与输入检查

若用户已说明故事成熟，只做简短确认：主角是否明确、核心关系/冲突是否明确、结局是否明确、是否有足够场景支撑剧本化。

**输入不足时的处理**：
- **极短输入（<500 字）**：不进入剧本生成，要求补充。
- **只有概念，没有故事**：要求用户先补成故事梗概或剧情大纲。
- **故事未评级**：只做轻量判断：可直接剧本化 / 需要补强 / 不建议进入剧本。
- **用户明确跳过提示包**：可以执行，但先提醒跑偏风险。

### Step 3：生成剧本化提示包

加载 `references/prompt-pack-template.md`。

这是正式剧本生成前的**强制步骤**。提示包必须包含 13 个字段（见 reference），其中核心是：不可改核心、必须保留场景/台词/物件、禁止行为清单、结构比例建议、最终执行 Prompt。

#### 🔴 CHECKPOINT · STOP：提示包确认

提示包完成后必须暂停，等待用户确认再继续。

例外：用户已明确说"提示包确认后自动继续"。

### Step 4：生成分场大纲

加载 `references/scene-outline-template.md`。

分场大纲是剧本施工图，不是剧情复述。每场必须包含：场号、场景标题、出场人物、戏剧任务、开始状态、核心事件、情绪转折、必保元素、场尾钩子、压缩标记。

#### 🔴 CHECKPOINT · STOP：分场大纲确认

分场完成后暂停，等待用户确认再写剧本正文。

### Step 5：生成标准剧本与逐稿自检

#### 5a. 生成标准剧本

加载 `references/script-format.md`。

按确认后的分场大纲逐场写。核心原则：动作说明可拍、对白有潜台词、物件承担叙事功能、每场有明确进入点和退出点。

长剧本可分批输出（每次约 3000-6000 字）。每批结尾标注进度。

#### 5b. 逐稿自检

加载 `references/selfcheck-template.md`。

每完成一版剧本，必须同步生成对应版本的自检报告（单独文件，不混入正文）。

自检报告给出修订优先级：**致命问题 / 高优先级 / 可优化**。

**进入下一稿的触发条件**：
- 致命问题 → 必须进下一稿；
- 高优先级 > 3 项 → 建议进下一稿；
- 仅有可优化 → 可直接进入分镜。

#### 🔴 CHECKPOINT · STOP：剧本确认

剧本和自检完成后暂停，等待用户确认是否进入分镜。

### Step 6：分镜生成（可选执行层）

加载 `references/shotlist-template.md`。

触发条件：用户明确要求，或剧本自检通过后用户确认进入执行阶段。

分镜必须基于已确认剧本，不得新增剧情、改台词、改人物关系或改结局。

#### 6a. 分镜层级选择

进入分镜前，必须先让用户选择分镜层级，避免将"关键分镜"误认为"完整逐镜头分镜"。若用户已明确指定层级，则直接执行。

可选层级：

1. **关键分镜表**：全片/全季关键镜头或每场关键镜头，用于视觉骨架、概念开发、AI 方向初稿。
2. **场级分镜表**：每场拆主要镜头，用于拍摄执行初稿，比关键分镜更完整。
3. **逐镜头精细分镜**：指定场景/集数完整镜头拆解，用于正式拍摄、AI 视频逐镜生成或重场执行。
4. **用户自定义范围**：指定场次、集数、重场或镜头密度。

#### 🔴 CHECKPOINT · STOP：分镜层级确认

若用户没有明确层级，先暂停并询问：A. 关键分镜表；B. 场级分镜表；C. 指定场景逐镜头精细分镜；D. 自定义范围/镜头密度。确认后再生成分镜文件。

#### 6b. 分镜生成

按用户确认的层级生成分镜表。长项目必须分批生成，并在每批结尾标注完成范围与下一批起点。

### Step 7：数字资产清单生成（资产固化层）

加载 `references/asset-list-template.md`。

触发条件：剧本已确认，且用户需要继续进入 AI 视觉生成、视频生成、分镜深化、拍摄筹备、场景统筹、道具统筹或角色连续性管理。若用户说"场景清单、道具清单、角色出场清单、资产清单、数字资产、AI 资产、后续生成素材"等，均进入本步骤。

数字资产清单必须基于已确认剧本/分镜，不得新增剧情、角色、场景、道具或母题。它的任务是把后续流程会反复调用、需要保持连续性的元素固化成可检索、可复用的资产表。

资产清单默认采用"稳定资产偏好"：优先生成可长期复用、可版本管理、可被 AI 图像/视频多轮调用的资产条目。每个重要资产应尽量具备稳定名称、资产 ID、别名、来源场次、版本状态和连续性锁定信息，避免后续生成中反复改名、换脸、换空间、换道具外观。

默认包含五类资产：

1. 角色资产；2. 场景资产；3. 道具/物件资产；4. 母题/意象资产；5. 服装/妆发/状态连续性资产。

字段细则加载 `references/asset-list-template.md`；重要资产必须尽量锁定资产 ID、主名称、别名、来源场次、版本状态和连续性要求。

#### 🔴 CHECKPOINT · STOP：资产清单确认

资产清单完成后暂停，等待用户确认是否继续生成更细的 AI 角色一致性提示包、场景一致性提示包、道具图像提示词、拍摄清单或执行统筹表。

---

## 输出文件规则

默认保存目录：`/var/minis/workspace/script-forging/项目名/`。若运行环境不支持该路径，保存到当前 workspace 下的 `script-forging/项目名/`。

项目名规则：
- 用户给出片名/项目名时直接使用；未给时，用故事核心意象或主角名生成 4-12 字临时项目名；
- 项目名不得使用斜杠、冒号、换行等会破坏文件路径的字符。

文件写入规则：
- 正式产物必须写入 `.md` 文件；同名文件不覆盖，追加 `_v2`、`_v3`；
- 长剧本分批追加到同一文件，批末标注"已完成到第 X 场 / 下一批从第 X+1 场开始"；
- 自检报告单独成文；会话中只输出完成摘要、关键判断、下一步和文件链接。

| 产物 | 文件名 |
|:--|:--|
| 剧本化提示包 | `项目名_剧本化提示包.md` |
| 分场大纲 | `项目名_分场大纲.md` |
| 标准剧本 | `项目名_标准剧本一稿.md` → 二稿… |
| 自检报告 | `项目名_剧本一稿自检报告.md` → 二稿… |
| 分镜表 | `项目名_分镜表.md`（可选；仅在层级未细分时使用） |
| 关键分镜表 | `项目名_关键分镜表.md` |
| 场级分镜表 | `项目名_场级分镜表.md` |
| 指定场景逐镜头分镜 | `项目名_第X场逐镜头分镜.md` |
| 指定集数逐镜头分镜 | `项目名_第X集逐镜头分镜_批次01.md` → 批次02… |
| 数字资产清单 | `项目名_数字资产清单.md`（分镜后生成；剧本未确认时生成草表并标注"未锁定"） |

## 失败模式与恢复路径

| 失败/异常情况 | 恢复路径 |
|:--|:--|
| 输入少于 500 字 | 停止剧本生成，要求补充：主角、核心关系、冲突、关键场景、结局、基调。 |
| 只有概念没有故事 | 不生成剧本；先要求用户补成故事梗概或剧情大纲。 |
| 用户跳过提示包 | 先提示跑偏风险；生成"简化提示包"（不可改核心、禁止行为、格式规则、自检标准）后再写。 |
| 用户中途改变影视形态 | 回到 Step 3，更新提示包中的结构比例、场数、节奏与改编代价，再继续。 |
| 分场大纲与提示包冲突 | 以故事原文、用户约束、提示包为准；标出冲突场次并重写分场，不直接进入正文。 |
| 剧本正文偏离分场 | 停止续写，回到最近一场开始处修正；不得用后文补丁掩盖前文跑偏。 |
| 自检出现致命问题 | 必须生成下一稿修订方案，并进入二稿/三稿，不直接进入分镜。 |
| 高优先级问题超过 3 项 | 先给修订清单，再进入下一稿；用户明确拒绝时才跳过。 |
| 用户只要求分镜但剧本无场号/场标题 | 先做最小格式整理，补齐场号和场标题，再生成分镜。 |
| 用户要求分镜但未指定层级 | 先解释关键分镜/场级分镜/逐镜头精细分镜差异，让用户选择；不要默认生成关键分镜冒充完整分镜。 |
| 用户要求完整逐镜头分镜但项目过长 | 拆分为按集/按场/每 20-40 镜头分批生成，并标注进度；不得一次性压缩成关键分镜。 |
| 用户要求资产清单但剧本未确认 | 先要求确认剧本版本；如只有故事无剧本，先生成最小场景/角色/道具草表，并标注"未锁定"。 |
| 资产清单与剧本/分镜冲突 | 以已确认剧本为准；若分镜新增了不改变剧情的执行道具，可标注为"分镜执行补充"。 |
| 资产名称/ID 不稳定 | 使用首次确认的正式名称和资产 ID；新增别名只写入"别名/备注"，不得随意改主名称。 |
| 剧本进入二稿/三稿后资产可能变化 | 不重建整份资产清单；保留原资产 ID，生成资产变更记录，标注新增、删除、合并、外观变化、场次变化和连续性风险。 |
| 角色/场景/道具信息不足 | 不擅自细化为确定设定；用"待定/需主创确认"标注，并给出最小连续性约束。 |
| 场标题/对白格式不统一 | 停止续写；对照 `script-format.md` 逐场检查场号、场景标题、对白格式；用统一格式重写不规范的场次；已完成的分镜和资产清单如引用了不规范场号，同步修正。 |
| 长剧本无法一次完成 | 按 3000-6000 字或 3-8 场分批；每批写入同一文件并标明续写起点。 |
| reference 文件不可读 | 使用主文档中的最小模板继续，并在会话摘要中说明缺失的 reference。 |
| 文件写入失败 | 改存到 `/var/minis/workspace/` 根目录；仍失败时，在会话中输出可复制 markdown，并说明未落盘。 |

## 禁止行为清单

| # | 禁止行为 | 代价（为什么不能做） | 易滑入场景（什么情况下容易犯） |
|:--|:--|:--|:--|
| 1 | 无依据新增第三者、怀孕、车祸、绝症、死亡、绑架、黑化、复仇等狗血情节 | 破坏原文叙事气质，把克制伤痛变成廉价刺激，观众出戏 | 原文情感张力不足时 AI 倾向用外部事件"补冲突"；或原文已有悲剧底色 AI 过度加码 |
| 2 | 改变原文结局方向，或把克制关系写成直白告白 | 违背故事原文最高优先级，消解原文留白力量 | 原文关系暧昧但未说破 AI 本能想"帮角色说出来"；或写到最后几场时 AI 惯性推向团圆 |
| 3 | 合并/删除承担结构回收功能的物件、场景、母题 | 断掉伏笔-回收链，全文结构塌掉，终局失去情感重量 | 压缩篇幅时 AI 删掉"看似不重要"的物件；或写分镜时以为可以合并 |
| 4 | 为了"戏剧性"让人物突然做违背人设的事 | 人物弧线断裂，观众不再相信角色 | 关键场景需要"高光时刻" AI 让人物突然告白/爆发/成熟；或结尾想制造高潮而跨过应有的防御 |
| 5 | 用旁白心理、主题解释、导演阐述替代可拍动作、沉默、物件和对白潜台词 | 剧本变成小说或论文，失去影视特有的视觉叙事力量 | 内心戏丰富的段落 AI 本能用独白解释；或改编文学作品时直接搬运原文心理描写 |
| 6 | 把剧本写成小说、散文、读后感，或让场标题/对白/微信等格式混乱 | 失去可执行性，后续分镜/资产链断裂 | 原文文学性强时 AI 保留过多描写；场景标题/对白格式在长剧本中逐渐漂移 |
| 7 | 分镜、资产清单阶段新增剧情、改台词、改人物关系或改结局 | 越权——分镜和资产是执行层不是创作层，后续工序依赖上游锁定 | 分镜时发现剧本"不够精彩" AI 自行补情节；资产清单为凑完整擅自填入设定 |
| 8 | 用户未指定分镜层级时，默认生成关键分镜表冒充完整逐镜头分镜 | 用户拿到后发现不能用；关键分镜和逐镜头拍摄分镜是完全不同的执行密度 | 用户说"帮我做分镜"未明确层级，AI 选最快路径输出 |
| 9 | 资产清单在剧本未确认时输出"已锁定"版本 | 后续改稿导致资产作废、AI 生成素材报废、团队信任受损 | 用户催要资产清单但剧本尚未定稿，AI 为满足需求直接输出"完整版" |

## 与 narrative-to-screen-reader 的分工

- `narrative-to-screen-reader`：故事 → 给人看的影视开发读本（演员读本、导演读本、制片摘要等）。
- `script-forging`（剧本锻造）：故事 → 给执行用的剧本、分镜与数字资产清单（提示包、分场、剧本、自检、分镜表、角色/场景/道具/母题资产表）。

演员读本原则上在剧本一稿后再做，因为演员需要依据稳定场景、台词和行动线工作。导演视听读本、制片摘要可以前置，但不是剧本生成必要输入。

## 最小执行模板

当用户给出成熟故事并要求写剧本时，按以下顺序回应：

1. 读取故事原文。
2. **Step 1**：加载 `form-judgment.md`，给出专业形态建议 → 🔴 等待用户确认形态。
3. **Step 2**：最小可行性确认。
4. **Step 3**：加载 `prompt-pack-template.md`，生成并保存提示包 → 🔴 等待用户确认。
5. **Step 4**：加载 `scene-outline-template.md`，生成并保存分场大纲 → 🔴 等待用户确认。
6. **Step 5**：加载 `script-format.md` + `selfcheck-template.md`，分批生成剧本正文 + 同步自检报告 → 🔴 等待用户确认是否进入分镜。
7. 如进入二稿/三稿，每完成一稿都同步生成对应版本自检报告。
8. **Step 6**：加载 `shotlist-template.md`，先确认分镜层级（关键分镜表 / 场级分镜表 / 指定场景逐镜头精细分镜 / 自定义范围），再分批生成分镜表。
9. **Step 7**：如用户进入资产固化/AI 后续生产，加载 `asset-list-template.md`，生成并保存数字资产清单 → 🔴 等待用户确认是否继续生成 AI 一致性提示包/拍摄执行清单等后续材料。

