# Novel To Script

> 将小说/故事转化为专业影视剧本的完整工作流 Skill。当用户输入小说、短篇故事、故事大纲，并要求生成/改编为影视剧本、电影剧本、TV 剧本时使用。触发关键词：小说改编剧本、生成剧本、故事转剧本、novel to script、story to screenplay、写剧本、改编成剧本。输出符合专业影视行业格式规范的中文剧本，并为下游 storyboard 工作流生成视觉合约文档。

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

---


# novel-to-script — 小说/故事 → 影视剧本

## 概述

本 Skill 将输入的小说或故事文本，通过六个阶段的结构化工作流，生成专业影视剧本。

- **输出语言**：中文（默认）
- **输出位置**：`/Users/pixies/Library/Mobile Documents/iCloud~md~obsidian/Documents/Mydoc/02_Projects/Script Workflow/Output/<作品名>/`
- **人工确认节点**：Phase 2（Beat Sheet）+ Phase 3+4（人物/场景档案）完成后需用户确认，再继续 Phase 5
- **下游接口**：输出的 `characters.md`（含视觉档案）和 `locations.md`（含场景视觉基准）直接供 Storyboard 工作流调用

---

## Reference 文档位置

所有参考规范文档已内置于 skill 目录：`references/`

| 文件 | 用途 |
|------|------|
| `references/script-adaptation.md` | Phase 1+2：改编原则与媒介转化 |
| `references/script-plot.md` | Phase 2：三幕结构与节奏设计 |
| `references/script-characters.md` | Phase 3：人物塑造与视觉档案规范（含主要角色数量核对） |
| `references/script-scenes.md` | Phase 4：场景环境与视觉基准规范（含主要场景数量核对） |
| `references/script-format.md` | Phase 5：剧本格式规范（含代码块格式要求） |
| `references/script-dialogue.md` | Phase 5：对白创作规范（隐藏问题/欲望不对称/信息转化为武器/潜文本技法） |
| `references/script-narrative.md` | Phase 5：叙述性描写规范（选择即意义/节奏类型快中慢/形象系统/四行上限/具象动词/可拍摄性） |
| `references/script-qa.md` | Phase 6：质检标准（含叙述质检/数量核对/AI错误清单扩充） |

**执行前必须读取对应 Phase 的 Reference 文档（路径相对于 skill 目录解析）。**

---

## 工作流总览

```
[用户输入] 小说/故事文本 + 作品名
    ↓
Phase 1：改编分析          → story-analysis.md
    ↓
Phase 2：结构设计          → beat-sheet.md          ★ 等待用户确认
    ↓
Phase 3：人物档案          → characters.md           ★ 等待用户确认
Phase 4：场景视觉基准      → locations.md            ★（Phase 3+4 并行）
    ↓ 确认后继续
Phase 5：场景正文生成      → scenes/SC_xxx.md（分幕并行 sub-agent）
    ↓
Phase 6：QA 质检           → qa-report.md + final-script.md
    ↓
[输出] 完整剧本 + 视觉圣经文档
```

---

## 输出目录结构

```
Output/<作品名>/
├── story-analysis.md       ← Phase 1
├── beat-sheet.md           ← Phase 2（确认节点）
├── characters.md           ← Phase 3（确认节点，含视觉档案）
├── locations.md            ← Phase 4（确认节点，含场景视觉基准）
├── scenes/
│   ├── SC_001.md
│   ├── SC_002.md
│   └── ...                 ← Phase 5
├── full-script-draft.md    ← Phase 5 合并
├── qa-report.md            ← Phase 6
└── final-script.md         ← 最终输出
```

---

## Phase 1 — 改编分析

**读取**：`references/script-adaptation.md`

**输入**：原始小说/故事文本

**任务**：
1. 媒介转化分析（哪些内心独白/修辞/意识流内容必须转化为外部动作）
2. 叙事视角处理方案（第一人称/内心独白如何外化）
3. 主要人物清单（姓名 + 一句话功能定位 + 初始状态）
4. 主要地点清单（地点名 + 空间性质）
5. 核心戏剧性动作（驱动整个故事的外部冲突，一句话）
6. 叙事结构判断（线性/非线性，时间跨度）

**输出**：`story-analysis.md`

---

## Phase 2 — 结构设计（厚版 Beat Sheet）

**读取**：`references/script-plot.md` + `references/script-adaptation.md`

**输入**：原始小说全文 + `story-analysis.md`

**任务**：
1. 确定三幕结构比例和总场景数
2. 定位七大转折点（激励事件/情节点I/中点/情节点II/危机/高潮/结局）
3. 为**每一个场景**生成叙事摘要（见下方格式）

**每个场景的叙事摘要格式**：
```
SC_编号 INT./EXT. 地点 - 时间
幕次：第X幕
功能：（这个场景在整体结构中的戏剧功能）
原著对应：（原著哪个段落/章节，直接引用关键内容）
核心动作序列：（人物做了什么，3-5个外部可见动作，按顺序列出）
情绪走向：（场景开始→场景结束的情绪变化）
隐藏问题：（这场戏中不能被直接说出的核心张力，一句话；纯动作场景填"无"）
叙述节奏：（快 / 中 / 慢；快=动作堆叠，中=感知积累，慢=流动叙述）
场景结束状态：（这个场景结束时，情况如何了？为下一场景做什么铺垫）
原著保留项（Phase 5 必须继承，Phase 6 必须核对；如无则填"无"）：
  - [情节/道具/动作]：原著中必须在剧本里体现的情节要素、具体道具、人物动作，逐条列出
  - [台词/含义]：原著中值得保留的关键台词，或需要传达的核心含义，逐条列出；转化方式不限，含义相符即可
```

> **重要**：Beat Sheet 是整个工作流的核心。每个场景摘要必须内容充分，包含原著信息提取，让后续 Phase 5 不需要再读原著。`原著保留项` 是防止关键信息在多步工作流中丢失的唯一机制——凡有重要情节细节、视觉焦点、原著台词或核心含义的场景必须填写。Phase 5 自行判断转化方式，不受限制。

**输出**：`beat-sheet.md`

**⚠️ 确认节点**：输出完成后，向用户展示 beat-sheet，说明场景总数和三幕结构，请用户确认。用户说"确认"或"继续"后才执行 Phase 3+4。

---

## Phase 3 — 人物档案

**读取**：`references/script-characters.md`

**输入**：`story-analysis.md` + `beat-sheet.md`

**任务**：

**步骤 0：主要角色数量核对（必须先执行）**
1. 从原著逐章提取主要角色清单（有名字/台词/显著动作/在2个以上场景出现的角色）
2. 记录原著主要角色总数 N_char
3. 后续生成的【角色视觉档案】数量必须 ≥ N_char
4. 允许合并：功能完全重复的次要角色可合并，但档案中需注明

**步骤 1-5：生成每个主要角色的以下内容**：
1. 欲望（表层目标）/ 需求（深层动机）/ 恐惧
2. 人物弧光（从开始到结束的变化轨迹）
3. 关键行为模式（在剧中反复出现的行为特征）
4. 角色关系图谱
5. **【视觉档案】**（必须完整填写，格式见 `references/script-characters.md` 零章节）

**步骤 6：缺漏自检**
- 对照原著清单逐一确认每个主要角色都有对应【角色视觉档案】代码块
- 有台词/动作但未生成视觉档案的角色必须补充

**输出**：`characters.md`

---

## Phase 4 — 场景视觉基准

**读取**：`references/script-scenes.md`

**输入**：`beat-sheet.md`（地点列表）

**步骤 0：主要场景数量核对（必须先执行）**
1. 从原著提取主要地点清单（有具体地名/承载完整场景/被多次提及/对情节有功能性的地点）
2. 记录原著主要地点总数 N_loc
3. 后续生成的【场景视觉基准】数量必须 ≥ N_loc
4. 允许合并：功能相同、空间特征相似的地点可合并，但基准中需注明

**步骤 1：生成每个主要地点的【场景视觉基准】**（格式见 `references/script-scenes.md` 零章节）：
- 地点代码（与 SC 标题一致）
- 空间性质
- 基本布局
- 光线默认状态
- 固定视觉标志物（≥3个，可识别的具体物件）
- 可变元素

**步骤 2：命名一致性检验**
- 同一地点跨场次的标题命名必须保持一致
- 分镜工作流依赖命名识别同一空间

**步骤 3：缺漏自检**
- 对照原著清单逐一确认每个主要地点都有对应【场景视觉基准】代码块

**输出**：`locations.md`

> Phase 3 和 Phase 4 **可以并行运行**（spawn 两个 sub-agent 同时执行）。

**⚠️ 确认节点**：Phase 3+4 完成后，向用户展示人物档案和场景视觉基准，请用户确认。用户说"确认"或"继续"后才执行 Phase 5。

---

## Phase 5 — 场景正文生成

**读取**：`references/script-format.md` + `references/script-dialogue.md` + `references/script-scenes.md` + `references/script-narrative.md`

**输入**：`beat-sheet.md` + `characters.md` + `locations.md`

**分幕并行策略**：
- 按幕分 3-4 个 sub-agent 并行生成
- 每个 sub-agent 获得：完整 `characters.md` + `locations.md` + 本幕的 beat-sheet 片段 + format/dialogue/scenes/narrative 规范
- **注意**：Phase 5 sub-agent 不需要原著全文，所有必要的叙事信息已在 beat-sheet 的场景摘要中

**每个场景必须包含**：
1. 场景标题（`SC_编号 INT./EXT. 地点 - 时间`）
2. 叙述性描写——严格遵循以下规则（来自 `references/script-narrative.md`）：
   - **可拍摄性**：只写摄影机能看见的 + 话筒能听见的，绝对现在时
   - **四行上限**：每段最多4行，理想1-2行，一段一意
   - **具象动词**：疲惫→踉跄/拖行；谨慎→贴墙挪动/蹑手蹑脚；傲慢→大步迈入；犹豫→退缩/停顿；急迫→冲出/飞奔
   - **可拍摄性禁令**：内心想法/记忆/顿悟/情绪告知/作者介入——全部禁止，违者必须转化为外部动作
   - **暗示镜头**：禁止摄影机指令，通过描写细节引导视觉焦点
   - **动作堆叠**：快节奏序列每行一个动作，段落间留空行
   - **节奏设计**：按 beat-sheet 中的`叙述节奏`字段选择模式——快（动作堆叠）/ 中（感知积累）/ 慢（流动叙述），全幕节奏不得均速
3. 对白块（有潜文本、有角色个性、简洁有力）——必须使用**代码块**格式，内容4空格缩进
4. 场景收尾动作（明确的视觉结束点）

**对白质量要求**（来自 `references/script-dialogue.md`）：
- 80% 视觉，20% 对白原则
- 禁止直白说出情感（"我很难过" → 动作替代）
- 每句台词必须有潜文本或推进戏剧
- **写对白前先确认 beat-sheet 中的隐藏问题**，所有台词围绕它兜圈子
- **检查两个角色欲望是否有结构性冲突**（欲望对称 = 台词平）
- **信息型场景**：背景信息必须转化为角色在压力下使用的武器，不得平静传递

**输出**：每个 SC 一个文件 → `scenes/SC_001.md`，完成后合并为 `full-script-draft.md`

---

## Phase 6 — QA 质检

**读取**：`references/script-qa.md`

**输入**：`full-script-draft.md` + `beat-sheet.md`

**质检项目**：
1. 三幕结构比例验证（按场景数比例，非页数）
2. 七大转折点位置对照
3. 对白质量抽检（AI味检测：过度解释型、情绪说明型、总结型台词）
4. **场景级对白前置检验**：对话场景确认隐藏问题存在、欲望不对称存在；信息型场景确认信息已转化为武器
5. 场景可拍摄性检查（无内心独白，无纯文学描写）
5. 视觉合约完整性（characters.md 视觉档案 + locations.md 视觉基准是否齐全）
6. SC 编号连续性检查
7. **叙述描写质检**（新增）：
   - 可拍摄性：有无"他想/她感到/他记得/她知道/他意识到"、"我们看见/我们听见"、解释动作含义的句子
   - 节奏分布：全剧快/中/慢分布是否有意对比，均速视为质检失败
   - 动词精准度：有无模糊动词未替换为具象动词
   - 格式：全程现在时态、快节奏序列是否使用动作堆叠
8. **视觉档案与场景数量核对**（新增）：
   - 对照原著清单，【角色视觉档案】数量 ≥ 原著主要角色数
   - 对照原著清单，【场景视觉基准】数量 ≥ 原著主要地点数
   - 同一地点跨场次命名一致性验证
9. **AI错误清单逐项检查**（新增）：叙述文学化、动词不具象、内心活动残留、视觉档案遗漏、格式错误（视觉档案/元数据/对白未用代码块）
10. **原著保留项核对**（新增）：
    - 逐场对照 beat-sheet 中的 `原著保留项` 字段
    - [情节/道具/动作] 类：确认每条在剧本正文中有对应呈现，遗漏标记为【严重缺失】
    - [台词/含义] 类：确认核心含义已在剧本中呈现，转化方式不作限制（对白/动作/场景细节均可）；完全缺失标记为【严重缺失】
11. **跨场景逻辑一致性核查**（新增）：
    - **道具状态连贯**：关键道具在不同场景间的物理状态是否前后一致
    - **人物行为连贯**：同一人物的行为模式、能力边界、身体状态在全剧是否保持一致
    - **空间逻辑**：人物移动路径是否物理可行；同一空间布局描写是否一致
    - **时间逻辑**：场景间时间跳跃是否有清晰视觉标记
    - 发现逻辑断裂时标记为【逻辑断裂】，说明断裂位置（SC_XXX → SC_XXX）和具体矛盾

**AI生成后必做修正步骤**：
1. 长台词拆分（连续独白必须用动作/表情/反应岔开，不允许不间断大段独白）
2. 删除内心描述（"他想"、"她感到"、"他意识到"等）
3. 强化动作（视觉动作替代解释性对白）
4. 检查转折（每个转折点改变游戏规则或赌注）
5. 对白去味（消除AI解释性语气、总结性台词）
6. 潜文本还原（"写在鼻子上"的台词改用反衬或置换法）
7. **叙述动词替换**（模糊动词→具象动词）
9. **删除副词**（换用本身携带情感色彩的动词）
10. **数量核对**（对照原著，视觉档案和场景基准无遗漏）
11. **格式核对**（视觉档案/场景基准/元数据/对白块均为代码块格式）
12. **节奏检查**（检查全剧叙述节奏分布，设计快/中/慢对比，均速须修正）
13. **场景级对白诊断**（每个对话场景确认隐藏问题 + 欲望不对称；信息型场景确认信息已武器化）
14. **必须呈现修复**（qa-report 中标记【严重缺失】的项目必须在 final-script.md 中补全）
15. **跨场景逻辑修复**（qa-report 中标记【逻辑断裂】的问题必须在 final-script.md 中修正后才能交付）

**⚠️ 强制输出规则**：
- `qa-report.md` 是 Phase 6 的**必要输出**，不得省略
- `qa-report.md` 必须在 `final-script.md` 之前写入文件
- 如果 qa-report.md 未生成，Phase 6 视为未完成，不得输出 final-script.md
- qa-report.md 必须包含：逐项检查结果（含通过/失败标记）+ 所有问题列表 + 【严重缺失】和【原著偏离】标记 + 整体评分

**输出**（按顺序）：
1. `qa-report.md`（逐项检查结果 + 问题列表 + 评分，**必须先写**）
2. `final-script.md`（修订后完整剧本，供 storyboard 调用，qa-report 写完后再写）

---

## 执行规则

1. **语言**：所有剧本内容（场景描写、对白）均用中文输出
2. **文件写入**：每个阶段完成后立即写入文件，不要等全部完成再写
3. **确认节点不可跳过**：Phase 2 和 Phase 3+4 必须等待用户明确确认
4. **Reference 文档优先**：遇到格式、结构、对白的具体问题，以 Reference 文档内容为准
5. **视觉合约必须完整**：视觉档案（characters.md）和场景视觉基准（locations.md）是向下游 storyboard 传递的合约，不得省略任何字段
6. **对白禁止内心叙述**：剧本是视觉媒介，不写"他心想"、"她感到"等内心描述

---

## 启动方式

用户提供：
1. 小说/故事文本（直接粘贴或提供文件路径）
2. 作品名（用于创建输出文件夹）

立即开始 Phase 1，无需询问更多参数。

