sw-workflow · git:20260908.0657714 · 2026-09-08 · sha256 135be843c725a9f5

sw-workflow git:20260908.0657714A

Immutable. This exact content is served forever at /api/v1/blob/135be843c725a9f5.

---
name: sw-workflow
description: Project orchestrator for the screenwriting skill set (剧本项目主线调度 / 状态存档 / story bible) — a meta-skill that adds no new craft knowledge but routes a screenplay or stage-play project through stages (premise → structure → character → scenes → draft → revision → submission), names which sw-* skill to invoke at each stage, defines each stage's deliverable and advisory exit check, and keeps all project state in a story-bible.md file so work can resume across sessions. Use when starting a new script project, resuming one ("continue my screenplay", "where were we"), when the user asks "what should I do next" on a script, when converting a vague idea into a full development pipeline, or when the other sw-* skills are firing individually and the overall process needs sequencing.
---

# 剧本项目主线调度(Workflow & Story Bible)

本 skill 不含新的编剧知识,只做两件事:**排顺序**(哪个阶段调用哪个 skill、交什么、什么算过关)和**存状态**(把每阶段结论写进 `story-bible.md`,下次会话接着做)。所有方法都在其他 sw-* skill 里,本 skill 只负责在正确的时刻把它们叫出来。

设计依据来自一次对照实验:同一题目,按流程先填工作单再写,与不用流程直接写相比,篇幅、主角主动性、对手强度、潜台词全部不同;差别不在知识,在于"动笔前必须填的表、写完后必须过的清单"。本 skill 就是那张表和那份清单的调度器。

story-bible 模板与各阶段工作单见 [reference.md](reference.md)。

---

## 一、会话协议(每次开始与结束都执行)

### 开始

1. 在当前目录(或用户指定的剧本目录)找 `story-bible.md`。
2. **找到**:只读"当前阶段""已定决策""决策日志"三节,用三句话向用户复述:项目是什么、做到哪一步、上次定了什么。然后直接进入当前阶段,不重新讨论已定决策,除非用户主动推翻。
3. **没找到**:判断入口路径(见第三节),按 reference.md 模板新建 `story-bible.md`,只填"项目信息"和"当前阶段",其余留空。不要一次问用户四个以上的问题;能从用户的话里推断的先填上,标"(待确认)"。

### 进行中

- 每完成一个阶段的交付物,立刻写进 story-bible 对应节,并把"当前阶段"推进一格。
- 任何改变既定决策的动作(换前提、换结尾、删人物)都在"决策日志"加一行:日期、改了什么、为什么。
- story-bible 保持在一次能读完的长度(约 25K token,中文 1.5 万字以内)。产物只写结论,不写推导过程;大纲、处理台本、剧本正文放独立文件,bible 里只记文件名和一句状态。

### 结束

- 会话结束前确认 story-bible 已更新到最新,最后一行写"下一步:"一句话。

---

## 二、阶段图

| # | 阶段 | 调用的 skill | 交付物(写入 story-bible 的节) | 建议通过标准 |
|---|---|---|---|---|
| 0 | 启动 / 续写 | 本 skill | 项目信息、入口路径、当前阶段 | 知道要做什么类型、多长、给谁 |
| 1 | 选材与前提 | `sw-premise-theme` | 闪念与"为什么在乎"、主旨一句、假设问题、**前提**(人物特质+导致+结局)、**主控思想**(价值+原因)、第三条轨道(渴望 vs 错误信念)、戏核、一句话故事、logline | 前提只有一个;能向陌生人一句话说清;戏核抽掉戏不成立;主题词定了 |
| 2 | 结构 | `sw-story-structure` | 结尾、开端、情节点Ⅰ/Ⅱ、中点性质(胜利假象/失败假象)、BS2 页码表、幕比例、次情节与主控思想的关系 | 四件事(结尾/开端/两个情节点)都知道;铺垫≤25 页;中点与"失去一切"互为反面;最后一幕最短 |
| 3 | 人物与冲突 | `sw-character-conflict` | 主要人物三维表、具体类别、对主题态度、对立统一的绑定物、对手的刀、成长阶梯、原初场景 | 主角最多维;对手总和强于主角;没有两人同型;有"最强的对手是自己"的一面;没有祥云 |
| 4 | 场景清单 / 处理台本 | `sw-scene-craft` + `sw-format-adaptation` | 步骤大纲(每场一两句+价值转折+结构位置)、演示板 40 卡(+/-、><)、道具与形象系统、处理台本(可选) | 每场价值有转折;第三幕不止两张卡;相邻场景有过渡要素;无纯解说场 |
| 5 | 初稿 | `sw-dialogue` + `sw-format-adaptation`(格式与输出契约)+ 参照类 skill | 剧本文件(好莱坞式交 `.fountain`,中文场号制或日式交纯文本,见 `sw-format-adaptation` 二之二)、页数、每日进度 | 页数在目标 ±15%;格式硬规则全过;对白遮名可辨 |
| 6 | 修改 | 各 skill 的"诊断清单" | 修改目标清单、逐项完成记录、稿次 | 结构诊断 13 问、人物诊断 14 问、对白诊断 14 问、场景诊断 13 问、格式诊断 11 问都跑过一遍 |
| 7 | 提交 / 行业 | `sw-industry-business` | logline 与一页梗概、推销稿、目标买家/比赛、署名与登记 | PROBLEM 七要素自检通过;一句话经过陌生人测试 |

**参照类 skill 何时进入**:
- `sw-american-case-studies`:阶段 1–2 找同类型片单和陈词滥调;阶段 6 对照同类型高潮。
- `chekhov-dramaturgy`、`ozu-screenplay-style`:写反高潮、多主人公、家庭题材、"事件画外反应画内"时,从阶段 2 起作为结构与语气的样板。
- `sw-japanese-screenwriting`、`sw-korean-french-screenwriting`:片段优先、主题后置、类型承诺、集体创作等替代路径;用户明确不走三幕经典设计时在阶段 1 就引入。

**阶段可以回退**:阶段 5 发现对白写不动,通常是阶段 3 的人物或阶段 1 的前提有洞,回去补,然后在决策日志记一笔。

---

## 三、入口路径

| 用户情况 | 从哪个阶段开始 | 特别处理 |
|---|---|---|
| 从零写长片 / 多幕剧 | 0 → 1 → … → 7 全走 | 标准路径 |
| 手里已有初稿要改 | 先做阶段 1–3 的**反向填表**(从稿子里提取前提、结构、人物填进 bible),再进阶段 6 | 填表时把稿子里没有的项标"缺",这些缺项就是修改清单 |
| 改编小说 / 舞台剧 / 真实事件 | 0 → `sw-format-adaptation` 改编四问 → 1 → 2 … | 阶段 1 先答"原素材的冲突主要在哪一层面、要重新发明什么";真人故事先确认授权 |
| 短片 / 小戏 / 独幕剧 | 1 → 2(用陆军起承转合与八法代替 BS2)→ 3 → 5 | 演示板缩到 10–15 卡;人物≤5;戏核必须先有 |
| 只有一个点子,不知道能不能写 | 1(只到一句话故事)→ 7 的 PROBLEM 自检 | 通过再回 2;不通过就换点子,bible 里保留被否的点子和原因 |
| 电视剧 / 剧集 | 1 → 2(每集结构+季结构两层)→ 3 → 企画书 | 企画书格式见 `sw-format-adaptation` reference 的大宫艾丽模板 |
| 行业问题(怎么卖、署名、经纪人) | 直接 7 | 不建 bible |

---

## 四、每阶段的最小动作

不必把对应 skill 全文读一遍。每阶段先读该 skill 的"工作流程"和"诊断清单"两节,需要具体方法再读对应章节,需要范例再读 reference.md。

**阶段 1**:按 `sw-premise-theme` 第十二节 12 步走;产物填入 bible 的"前提与主题"节。若用户给的是歌、画、新闻等外部素材,先只取叙事骨架与意象,编号、名字、句子另编。

**阶段 2**:先定结尾;再按目标页数换算 BS2 页码(110 页表按比例缩放:主题 5%、触发 11%、二幕 23%、中点 50%、失去一切 68%、三幕 77%);填页码表;写"中点是什么假象、失去一切是什么反面"。

**阶段 3**:每个主要人物填三维表一行;单独写"对立统一的绑定物是什么、只有谁的哪个特性消亡才能打破";给对手至少一把刀;列主角的镣铐。

**阶段 4**:步骤大纲每场一行:`场次 | 内外·地点·日夜 | 一句话 | 押上的价值 开→结 | 结构位置`;然后过一遍"删掉会怎样",价值不变的场删。

**阶段 5**:每天写完更新 bible 的"进度"一行(页数、写到第几场);发现设计缺陷不在稿子里硬改,回 bible 改设计再改稿。

**阶段 6**:把五份诊断清单的问题逐条列成修改目标,一条一条销;先第二幕,再对白,最后格式。

**阶段 7**:从 bible 的"前提与主题"节直接生成 logline 与一页梗概;跑 PROBLEM 七要素。

---

## 五、通过标准怎么用

- 标准是**建议门槛**,不是硬阻断。用户要跳步就跳,但在 bible 的"当前阶段"旁标"(跳过阶段 3 人物表)",并在进入阶段 5 前提醒一次。
- 对 AI 自己:每阶段结束用该 skill 的诊断清单自问,把没过的项写进 bible 而不是默默放过。
- 通过标准里凡是能量化的都量化(页数、卡片数、人物数、问号数)。

---

## 六、Subagent 与并行

- **不要**按阶段拆给不同 agent:前提、结构、人物是一体的,拆开会互相矛盾且丢失创作上下文。主线始终在一个会话里。
- **可以并行**的两类工作:
  1. 阶段 6 的多角度审读:结构诊断、人物诊断、对白诊断、场景诊断各派一个只读 agent 跑清单,回收成一份修改目标表。
  2. 大块检索:需要某本 reference.md 里的具体范例或某部作品的逐幕表时,派 agent 去读并只带回结论,避免主线上下文膨胀。
- 并行 agent 只读 bible 和稿子,不改 bible;改动由主线汇总后写入。

---

## 七、反模式

- 直接从点子跳到写剧本("冒牌的处理台本")。
- 每次会话把 bible 从头重写,或者忽略"已定决策"重新讨论前提。
- 把推导过程全塞进 bible,导致下次读不完。
- 一次问用户十个问题;应先按推断填上,标"待确认",让用户改。
- 让"通过标准"变成拒绝继续的理由。
- 用 subagent 分阶段写。

---

## 八、自检

1. 当前目录有没有 `story-bible.md`?读了"当前阶段/已定决策/决策日志"了吗?
2. 这次会话推进了至少一个阶段的交付物并写回了吗?
3. bible 还能一次读完吗?
4. 有没有改动已定决策而没记日志?
5. 结束时写了"下一步:"吗?