---
name: 通用-章节创作闭环
description: '用于对单章或连续多章执行"初始化→控制卡→创作→润色→去AI味→审阅回炉→读者产物→摘要"的完整章节闭环。适合章节写作 SOP、批量写章、日志续跑、9.2+ 回炉与最终摘要收口。关键词：章节创作闭环、跑完整 SOP、批量写章、回炉到 9.2、日志续跑、最终摘要。'
argument-hint: '给我 OUTLINE_FILE 与 CHAPTER_FILE；若是多章，可给 CHAPTER_FILES[] / CHAPTER_BATCH[]，默认直到评分达标再结束。'

---

# 通用-章节创作闭环

## 执行安保（硬性门禁）

### 阅读确认（强制）

**本文件不是摘要或参考提示，而是必须逐字执行的流程指令。**

在产生任何输出之前，必须先逐条输出以下确认。不输出确认就输出正文内容，一律视为流程违规：

```
[阅读确认]
- 本文件 SKILL.md → [已完整读取，完全理解全部硬规则与强制要求]
- references/章节创作闭环总流程与完成出口.md → [已读取并理解]
- references/章节路径推导与工件命名.md → [已读取并理解]
- references/章节批量模式与连续性日志.md → [已读取并理解]
- references/章节终审门槛与摘要规范.md → [已读取并理解]
```

若 Agents.md 声明了主输出平台或注册了三类模板，再追加：

```
- Agents.md → [已读取，已识别主输出平台 / 注册模板]
```

### 执行器定位（硬性）

- **本 Skill 是"执行器"，不是"规划器"**：目标是把步骤 0→13 真实跑完，而不是输出计划、进度条、阶段总结、初稿清单或"接下来将进行什么"的说明。
- **一气呵成**：一旦开始执行，必须一气跑完步骤 0→13，中途不得暂停去询问与任务无关或可由既有规则推断的问题。
- **禁止"等你说继续"式暂停**：不得在中途以"汇报当前进度/下一步计划"为理由停下来等待用户回复。除非硬性缺参导致无法继续，否则必须自动持续执行到步骤 13 的最终摘要输出。
- **步进式输出**：每一步开始时输出 [进度] 步骤 N：当前动作描述；在完成全部步骤之前，不得提前输出"本章节闭环完成"、评分结论或读者产物。

### 阶段推进闸门（硬性）

- 步骤 1 / 2 只代表"正文初稿阶段完成"，绝不代表整个 SOP 完成。
- 每完成一个步骤，必须立即判定 nextStep 并继续推进；只要 nextStep <= 12，就不得输出完成收尾语。
- 批量模式下，整批步骤 0→1.5→2 完成后必须立刻进入步骤 3→5；步骤 3→5 完成后必须进入步骤 6→10；全部章节通过 10 后才允许进入步骤 11→13。
- 如果发现自己刚完成的是"本相位最后一章"而不是"全 SOP 最后一步"，必须自动切到下一相位，而不是结束对话。

### 禁止误判完成的情形（硬性）

以下任一情况都不等于流程完成，必须继续执行：

1. **禁止把"初稿已写入"当作"章节已完成"** — 只完成步骤 1→2 时最多只能记为 drafted。
2. **禁止跳过步骤 2 后的字数门禁** — 正文修改后都必须重跑 count-chapter.ps1，以最新 MeetsMinCJK/WithinRange 字段为准。**正文字数检测必须使用 `scripts/count-chapter.ps1`**，不得用 `Len`、`NoWhitespaceLen`、编辑器字符数或目测代替；正文门禁只看 `BodyCJK / MeetsMinCJK / WithinRange`，`MeetsMinCJK` 必须为 `True`，`WithinRange` 最好为 `True`。
3. **禁止跳过润色与去AI味（步骤 3→4）直接进审阅** — 初稿必须经过润色和去AI味处理才能进入审阅。
4. **步骤 6→7→8→9→10 的首轮闭环必须无条件执行** — 不得根据任何"综合评分"决定跳过、合并或提前终止。
5. **禁止用"文件已存在"代替"步骤已执行"** — 必须以本次执行中是否实际读取、修改、覆盖写回并更新日志为准。
6. **禁止把"旧评分"或"旧报告"当作当前终审结论** — 只要正文在本次执行中发生了任何实质修改，审阅报告就必须重新审阅并覆盖更新。
7. **禁止把"接近 9.2"表述成"已达 9.2+"** — 8.8/8.9/9.0/9.1/9.2 一律视为未达标；只有明确写出综合评分 > 9.2 才达标。
8. **禁止把"阶段性汇报"伪装成"完成汇报"** — 步骤 13 之前只能输出进度，不得出现任何暗示"整个 SOP 已收尾"的表述。

## 继续读取的 references

- references/章节创作闭环总流程与完成出口.md — **必读**：步骤详解、执行细节与完成出口条件
- references/章节路径推导与工件命名.md — **必读**：工件路径规则与合规门禁
- references/章节批量模式与连续性日志.md — 批量模式与日志规则
- references/章节终审门槛与摘要规范.md — 评分门槛与摘要模板
- references/步骤2正文四拍与钩子轮换门禁.md — 步骤 2 落稿后的节拍复核
- ../../写作研究/网文留存模型.md — 留存基线，定义步骤 10 双轴回炉的留存评分标准与分流规则
- references/单元主线编排与节奏配比.md — 单元节奏参考
- references/九部件与进度节奏续跑卡.md — 卡顿恢复参考
- references/章节链路闭环复核与回写决策卡.md — 闭环复核参考
- references/三批次修订SOP与门禁节奏.md — 修订批次参考

## 风格/蓝本/写作研究模板自动发现规则

若当前服务的项目根目录存在 Agents.md，启动章节创作闭环前必须：

1. 读取项目根目录的 Agents.md；若其中声明了主输出平台，检索三类模板时优先匹配"适用平台"与主输出平台一致的模板，无匹配时回退到"适用平台：默认"的同类模板
2. 若 Agents.md 中注册了"写作研究模板"——读取对应路径的模板文件，将其作为本轮章节闭环的题材×平台默认门禁
3. 若 Agents.md 中注册了"作者风格模板"——读取对应路径的模板文件，将其作为正文创作、润色、去AI味和审阅阶段的统一文风基线
4. 若 Agents.md 中注册了"作品蓝本模板"——读取对应路径的模板文件，将其作为章首、回报、钩子、节奏和信息释放的闭环参照
5. 本 Skill 作为编排器主要负责读取、记录、传递三模板约束，并在日志中标注模板状态；具体字段由被调用的子 Skill 消费
6. 若项目根目录不存在 Agents.md，或其中未注册对应模板——回退通用默认模式，不报错，不阻断

## 主输出平台自动发现规则

若当前服务的项目根目录存在 Agents.md 且其中声明了主输出平台，启动章节创作闭环前必须：

1. 读取项目根目录的 Agents.md
2. 按命名约定定位对应的通用-输出{平台名}版 Skill
3. 将平台 Skill 的门禁标准（字数门槛、开篇密度、回报间隔、钩子强度、标题规则）作为本章节闭环的默认门禁基线
4. 在日志中记录当前主输出平台及对应平台 Skill
5. 若未配置主平台或配置缺失——回退平台无关的通用默认模式，不报错，不阻断

本 Skill 默认消费字段：

- 写作研究模板：章节门禁、章首约束、节奏间隔、禁忌类约束
- 作者风格模板：句长基线、段落节奏、对话风格配置、情绪表达方式、禁忌清单
- 作品蓝本模板：章首模式指纹、中段回报指纹、章末钩子指纹、场景节奏分布、信息释放节拍

## 默认模型温度参考

本 Skill 作为编排器不直接调用模型，但将以下温度约束传递给被调用的下游子 Skill 执行：

| 步骤 / 子 Skill | 推荐温度 | 说明 |
|---|---|---|
| 通用-审阅章节正文（审阅/复审） | 0.3 | 低创造性，保持判断稳定一致 |
| 通用-正文润色 | 0.45 | 方向已定，适度约束 |
| 通用-去AI味重写 | 0.45 | 同上 |
| 通用-创建小说正文 | 0.58–0.70 | 需要创造性与变化 |
| 通用-强化章节开头 / 章末钩子 | 0.45 | 局部强化，适度约束 |
| 通用-生成章节控制卡 | 0.45 | 结构规划，适度约束 |
| 通用-撰写书评 | 0.55 | 需要创造性但不宜跑偏 |
| 通用-润色作者有话说 | 0.50 | 轻创作，保持读者向口吻 |

## 练习方法入口（新增——吸收自知乎精华"如何把大纲蜕变成沉浸小说"）

本 Skill 的步骤 0→13 是生产级闭环（面向已投入连载的章节成品）。对于仍在打磨基本功的阶段，以下练习路径可作为补充使用：

1. **模拟练习模式**：使用 AI 生成章纲 → 调用 `通用-生成章节控制卡` 分解场景 → 调用 `通用-创建小说正文` 扩写成正文 → 调用 `通用-审阅章节正文` 做五问自筛 → 修改 → 重复直到五问全部通过。
2. **内化目标**：以 5-6 轮为一次完整练习周期，目的是把"开场戏/冲突感/舞台沉浸/人物细节/节奏连贯"这五问内化为写作直觉，而非永远依赖检查清单。
3. **脱离AI辅助**：练习周期完成后，脱离 AI 章纲直接写作，调用 `通用-创建小说正文` 一气呵成写完初稿，再用审阅步骤自我反馈。
4. **本模式与本 Skill 生产模式的关系**：练习模式使用本 Skill 的步骤子集（步骤 1→2→6→10），不执行完整的润色/去AI味/读者产物等生产步骤。练习模式下的评分门槛可放宽（不要求 9.2+），以"五问全部通过"为完成标准。

调用入口：从 `通用-创建小说正文` 的"章纲→正文自审五问"配套练习法触发时，应进入本练习模式而非全量生产闭环。

## 题材包装层路由规则

题材目录下的包装层 Skill（如都市悬疑-生成章节控制卡）是本 Skill 的题材特化扩展。调用规则：

- 在调用任一通用 Skill 之前，先检查当前项目题材目录下的 .github/skills/ 中是否存在同名的题材包装层
- 若存在：**先加载题材包装层 Skill**，再由其路由到通用 Skill 叠加题材规则
- 若不存在：直接调用通用 Skill，不报错，不阻断
- 示例：写都市悬疑章节时 → 先检查都市悬疑-章节创作闭环 → 若存在，用它包装本流程

## 章节创作闭环流程

### 步骤 0：初始化与环境检查

**调用 skill：无（编排器自执行）**

**扮演角色：** 编排器 / 项目经理角色，不代入具体创作/审阅/读者视角，只做环境检查与路径推导。

**职责：** 确认所有输入路径与依赖文件存在，自动发现模板/平台，推导全部工件路径，创建目录结构，初始化 SOP 执行日志。

| 子步骤 | 动作 | 产出 |
|---|---|---|
| 0.0 | 读取项目根目录 Agents.md（若存在），识别主输出平台与注册的三类模板 | 确定平台门禁、模板约束基线 |
| 0.1 | 读取 OUTLINE_FILE（卷纲/章纲），确认本章定位 | 本章定位确认 |
| 0.2 | **裁判源复核**：认真仔细阅读本章实际出场人物对应的人物传记 + 与本章背景/技术/规则/证据/程序链/世界观有关的故事设定文档 | 日志记录本轮核对了哪些裁判源、哪些约束已兑现、哪些待补丁 |
| 0.3 | 若已存在 CONTINUITY_LEDGER_FILE（连续性台账），读取上一章的结构化条目 | 承接上一章余波与钩子 |
| 0.4 | 验证 CHAPTER_FILE 路径，若所在目录不存在则创建 | 目录就绪 |
| 0.5 | 根据 CHAPTER_FILE 推导全部工件路径（见 references/章节路径推导与工件命名.md）：CONTROL_CARD_FILE、REVIEW_REPORT_FILE、READER_NOTE_FILE、BOOK_REVIEW_FILE、CONTINUITY_LEDGER_FILE | 工件路径表 |
| 0.6 | **路径合规校验**：逐项校验派生路径的根目录归属 | 校验通过方可继续 |
| 0.7 | 创建所需目录：写作控制卡/、审阅意见/、阅读笔记/、书评/、SOP执行日志/撰写章节/连续章台账/ | 目录就绪 |
| 0.8 | 初始化 SOP 执行日志（见 references/章节批量模式与连续性日志.md） | 日志写入 |

**完成标记：** checkpoint.nextStep = 1，写入日志。

---

### 步骤 1：生成章节控制卡

**调用 skill：** `通用-生成章节控制卡`（及对应的题材包装层）

**扮演角色：** 规划者 / 写前施工员角色。从大纲控制卡视角拆解本章任务，不代入作者写作情绪，以结构规划为主。

**职责：** 将卷纲/章纲压缩成可执行的本章施工命令，明确本章唯一职责、场景拆分、中段回报预埋、章末钩子预埋与上游供血对齐。

1. 加载通用-生成章节控制卡（若存在题材包装层，先加载题材层再路由到通用层）
2. 控制卡必须回答：本章核心任务、场景单元拆分、中段回报类型与触发条件、章末钩子类型与下一章接棒对象
3. 控制卡必须标注：本章对主卖点的关系（强化/兑现/转化/保温/铺垫）
4. 控制卡落盘到 CONTROL_CARD_FILE（路径必须以写作控制卡/开头）

**文件写入：** 控制卡 → 覆盖写入 CONTROL_CARD_FILE

**完成标记：** checkpoint.nextStep = 2，写入日志。

### 步骤 1.5：写前连续性检查

**调用 skill：** `通用-管理连续性冷热线`（及对应的题材包装层）

**扮演角色：** 规划者视角。在写完控制卡后、正式创作前，检查哪些旧线该在这章回归、哪些线快冷了、本章承接的上一章钩子是否清楚。

**职责：** 检查连续性冷热线状态，确认本章需要回应的旧线、伏笔与关系状态。

1. 加载通用-管理连续性冷热线（及对应的题材包装层）
2. 读取 CONTINUITY_LEDGER_FILE（若存在），检查人物动态状态、悬念/伏笔状态、回归压力与未回收钩子
3. 输出连续性诊断结论：热线/温线/冷线/归档线分类，以及本章必须触碰的对象
4. 若诊断发现关键冷线已连续多章失温，优先在控制卡中追加回归安排

**完成标记：** 诊断结果写入日志。

---


### 步骤 2：撰写章节初稿 → 字数检测 → 循环扩写（强制闭环）

**调用 skill：** `通用-创建小说正文`（及对应的题材包装层）；脚本 `scripts/count-chapter.ps1`

**扮演角色：** 小说作者角色。参考 `.github/agents/小说作者.agent.md` 的创作视角，代入项目对应题材的作者立场。创作阶段全情投入写作，字数检测阶段短暂切出执行脚本。

**职责：** 依据控制卡与章纲，创作章节正文初稿并确保达到字数门槛。**本步骤的结束条件只有一个：`MeetsMinCJK == true`。**

| 阶段 | 动作 |
|---|---|
| 2.1 | 加载通用-创建小说正文（及题材包装层），代入作者角色 |
| 2.2 | 依据控制卡 + 大纲 + 人物传记 + 故事设定，创作完整章节正文（含章引语、正文、章末钩子、## 作者有话说、## 章节后记） |
| 2.3 | 完整正文**覆盖写入** CHAPTER_FILE |

**【强制门禁：字数检测闸口】**
在完成 2.3 后、进入任何其他步骤前，必须先执行以下检测序列。检测结果决定**是否允许离开本步骤**：

| 顺序 | 动作 | 判定 |
|---|---|---|
| 2.4 | 运行 `scripts/count-chapter.ps1 -FilePath "CHAPTER_FILE"`，读取 JSON 输出中的 `BodyCJK / MeetsMinCJK / WithinRange`。**正文字数检测必须使用 count-chapter.ps1，不得用 Len、NoWhitespaceLen、编辑器字符数或目测代替；正文门禁只看 BodyCJK/MeetsMinCJK/WithinRange** | — |
| 2.5 | **强制判断**：`MeetsMinCJK == true`？ | ✅ → 允许离开本步骤（进 2.6）<br>❌ → **必须**回到 2.1（扩写模式），重写正文/作者有话说后覆盖写入，再回到 2.4 重新检测 |
| 2.6 | **扩写循环上限**：同一 CHAPTER_FILE 连续扩写最多 8 轮。8 轮后 MeetsMinCJK 仍为 false → 暂停本步骤，在日志中记录 `blocked_word_count_insufficient`，输出需要人工介入的说明，不得强行进入步骤 3 | — |

**扩写循环期间**：每轮扩写必须调用 `通用-创建小说正文（扩写模式）` 增加实际内容（新增场景/对话/描写/回报），**禁止用空行、重复句、标点填充等凑字数手段**。每轮扩写后必须重新执行 2.4 检测。

字数检测通过后，继续执行以下补检：

| 阶段 | 动作 |
|---|---|
| 2.7 | **节拍门禁**：执行四拍复核（前200字钩子、中段回报、后200字钩子、连续内倾段检查），见 references/步骤2正文四拍与钩子轮换门禁.md |
| 2.8 | **初稿后补检包**：①基础复检4项（重跑 count-chapter.ps1 字数门禁——仍以最新 MeetsMinCJK/WithinRange 为准；若含 `## 作者有话说` 则重跑 `count-afterword.ps1`；扫读是否混入"初稿+二稿"拼接式内容；同步刷新审阅链）；②章节自指检查（清除"这几章/前几章/上一章/本章/后文会"等连载导览腔）；③## 章节后记同步（刷新定位/爽点/伏笔回收/人物发展等字段） |

**【强制完成前提】**
本步骤的完成标记只在满足以下全部条件时写入：
- `count-chapter.ps1` 已执行，`MeetsMinCJK == true`
- 扩写循环未超过 8 轮上限（或已记录 `blocked_word_count_insufficient`）
- 四拍复核与补检包已执行

**文件写入：** 每轮扩写后覆盖写入 CHAPTER_FILE

**完成标记：** checkpoint.nextStep = 3，字数统计与四拍字段写入日志。

---

### 步骤 3：正文润色（组合调用）

**调用 skill：** `通用-正文润色`（及对应的题材包装层）；按需调用 `通用-强化章节开头`、`通用-强化章末钩子`、`通用-执行场景单元`、`通用-执行对话冲突`、`通用-执行微空间受限场景`

**扮演角色：** 小说作者角色（润色视角）。继续沿用 `.github/agents/小说作者.agent.md` 的作者立场，但切换为"精修者"模式——不是重写，而是打磨已有文本。诊断发虚维度时短暂切出为编辑视角，决定是否调用专项 Skill。

**职责：** 对已达字数门槛的章节进行整体文风、节奏、语言质感上的精修，并对局部短板做专项强化。

| 阶段 | 动作 |
|---|---|
| 3.1 | 加载通用-正文润色（及题材包装层），代入作者角色 |
| 3.2 | 读取当前 CHAPTER_FILE 全文，执行整章润色：语言流畅度优化、节奏与张力调整、人物描写与情感描写的细致打磨、证据链/动机链/时间线自洽 |
| 3.3 | 润色结果**覆盖写入** CHAPTER_FILE |
| 3.4 | **专项强化**：逐项诊断并决定是否调用专项 Skill |

**专项强化诊断与调用**（按需执行，不强制全部调用）：

| 诊断问题 | 调用 Skill | 处理范围 |
|---|---|---|
| 章首前 150–300 字抓力不足、首屏留存弱 | 通用-强化章节开头（及题材包装层） | 前 2–3 段，仅局部强化 |
| 章末后 150–300 字翻页感不足、下一章驱动弱 | 通用-强化章末钩子（及题材包装层） | 最后 200 字，仅局部强化 |
| 场景职责发虚、动作链推进弱、证据入场不到位 | 通用-执行场景单元（及题材包装层） | 对应发虚场景 |
| 对话冲突不成立、轮流发言式对白、潜台词缺失 | 通用-执行对话冲突（及对应的题材包装层） | 对应对话段 |
| 场景在微空间/受限空间需专项加压 | 通用-执行微空间受限场景（须先加载通用-执行场景单元）（及对应的题材包装层） | 对应微空间场景 |

3.5 每次专项强化后，覆盖写入 CHAPTER_FILE

**文件写入：** 润色/强化结果覆盖写入 CHAPTER_FILE

**完成标记：** checkpoint.nextStep = 4，记录本轮调用的专项 Skill 清单。

---

### 步骤 4：去 AI 味重写

**调用 skill：** `通用-去AI味重写`（及对应的题材包装层）

**扮演角色：** 小说作者角色（主编式去味视角）。继续沿用 `.github/agents/小说作者.agent.md` 的作者立场，但切换为"去味编辑"模式——先诊断病灶、再定手术强度、最后保信息执行。不在去味过程中切换为审阅者或读者。

**职责：** 在不改变剧情和人物设定的前提下，消除明显的 AI 文风、模板化表达和机械痕迹。

1. 加载通用-去AI味重写（及题材包装层），代入作者角色
2. 读取当前 CHAPTER_FILE 全文
3. 先去 AI 味深度诊断（模板腔、解释腔、均匀句群、感官均匀轰炸、比喻公式套娃、节奏全程匀速等结构指纹）
4. 再按三档手术强度（轻度/中度/重度）执行去味重写
5. **保真要求**：去味后必须保住信息量、结构职责、人物声口差异、章首抓力、中段回报、章末钩子
6. 去味结果**覆盖写入** CHAPTER_FILE
7. 记录本轮手术强度与主要病灶到日志

**文件写入：** 去味后正文覆盖写入 CHAPTER_FILE

**完成标记：** checkpoint.nextStep = 5，日志记录手术强度与病灶。

---

### 步骤 5：润色作者有话说

**调用 skill：** `通用-润色作者有话说`（及对应的题材包装层）

**扮演角色：** 小说作者角色（读者向交流视角）。沿用 `.github/agents/小说作者.agent.md` 的作者立场，但切换为"轻声交流"模式——站在作者身份和读者对话，不是写创作笔记也不是继续正文叙事。

**职责：** 将 `## 作者有话说` 修成读者向小剧场：一丢丢创作花絮 + 一点贴着本章余波的情绪共鸣 + 一个开放式轻追问。

1. 加载通用-润色作者有话说
2. 读取当前 CHAPTER_FILE 中的 ## 作者有话说 段落
3. 按读者向小剧场标准润色：
   - 用一个贴着正文的小细节，把读者重新拉回本章余波
   - 保留本章情绪、代价、悬念或刺点，但不剧透
   - 最后留一个开放式轻追问、轻岔口或轻余味
4. 润色后的完整正文（含更新后的作者有话说）**覆盖写入** CHAPTER_FILE

**文件写入：** 更新后的 CHAPTER_FILE

**完成标记：** checkpoint.nextStep = 6，写入日志。

---

### 步骤 6：第一次审阅（强制完整模板）

**调用 skill：** `通用-审阅章节正文`（及对应的题材包装层）

**扮演角色：** 审阅者角色。**必须从作者角色中完全退出**，切换到审阅者立场（参考 `小说审阅者.agent.md`）。审阅期间不得代入作者情绪、不得为正文做辩护式解释、不得以"我当初写的时候是这么想的"为由降低审阅标准。

**职责：** 以审阅者视角，对当前章节进行全面审阅，输出独立的审阅报告。

**硬性规则（违反任一即视为流程违规）：**
- 步骤 6→7→8→9→10 的首轮闭环必须无条件完整执行，**不得**根据任何综合评分决定跳过。
- 综合评分在步骤 6 里只允许"记录"，不允许"据此跳过后续步骤"。
- **审阅报告必须使用《通用-审阅章节正文》SKILL.md 中定义的完整报告模板**，不得写简版报告。简版报告的判断标准：缺少章首抓力/中段回报/章末钩子/现实落地/规则边界/链路失配/人物执行审计中任一板块即为简版。

**【强制门禁：审阅报告模板完整性检查】**
审阅报告写入后、在宣告本步骤完成前，必须逐项验证以下板块是否均在报告中出现：

```
□ 章首抓力评估
□ 中段回报评估
□ 章末钩子评估
□ 现实落地评估
□ 规则边界评估
□ 链路失配评估
□ 人物执行审计（含声口一致性、心智模型落地、压力反应匹配等）
□ 综合评分：X.X/10
□ 具体修改建议
```

任一板块缺失 → **判定为简版报告**，必须回退到步骤 6.4 重新撰写完整审阅报告，不得带缺失进入步骤 7。

1. 加载通用-审阅章节正文，代入审阅者角色
2. 读取当前 CHAPTER_FILE 全文
3. **审前裁判源复核**：认真仔细阅读本章实际出场人物对应的人物传记 + 故事设定文档
4. 执行全面审阅，严格使用审阅报告完整模板（章首抓力/中段回报/章末钩子/现实落地/规则边界/链路失配/人物执行审计）
5. 报告中必须包含 综合评分：X.X/10（纯数字，允许 1 位小数）
6. 审阅报告**覆盖写入** REVIEW_REPORT_FILE
7. 执行【审阅报告模板完整性检查】，确认无缺失后进入完成标记

**文件写入：** 审阅报告覆盖写入 REVIEW_REPORT_FILE

**完成标记：** checkpoint.nextStep = 7，写入日志。

---

### 步骤 7：根据审阅报告修订正文

**调用 skill：** 按需调用 `通用-正文润色`、`通用-强化章节开头`、`通用-强化章末钩子`、`通用-执行场景单元`、`通用-执行对话冲突`、`通用-执行微空间受限场景`、`通用-去AI味重写`（及对应的题材包装层）

**扮演角色：** **切回**小说作者角色（修订模式）。退出审阅者立场，回到 `.github/agents/小说作者.agent.md` 的作者视角。审阅报告是修改依据，不是创作枷锁——修改时以"解决问题"为目标，不是以"回应每一条意见"为目标。

**职责：** 根据第一版审阅报告，对章节做针对性修改与再润色。

**硬性规则：**
- 只要步骤 6 已执行，步骤 7 就必须执行一次，**不得**因为综合评分已达 9.2+ 就跳过。
- 评分高低都不改变本步骤的首轮必执行性质。

1. 代入作者角色
2. 读取当前 CHAPTER_FILE 与第一版 REVIEW_REPORT_FILE
3. 根据审阅报告中的问题与建议，判断问题所属层级：
   - **[骨架层]**：场景职责/唯一职责/结构问题 → 调用通用-执行场景单元（及对应的题材包装层）
   - **[扩展层]**：动作链/证据推进/冲突设计 → 调用通用-执行场景单元 / 通用-执行对话冲突 / 通用-执行微空间受限场景（及对应的题材包装层）
   - **[表达层]**：文笔/节奏/抓力/钩子 → 调用通用-正文润色 / 通用-强化章节开头 / 通用-强化章末钩子 / 通用-去AI味重写（及对应的题材包装层）
4. 针对性地按需调用上述一个或多个 Skill 进行修订
5. 修订后的完整正文**覆盖写入** CHAPTER_FILE

**文件写入：** 修订后正文覆盖写入 CHAPTER_FILE

**完成标记：** checkpoint.nextStep = 8，写入日志。

---

### 步骤 8：第二次审阅（强制完整模板 + 差异对比）

**调用 skill：** `通用-审阅章节正文`（及对应的题材包装层）

**扮演角色：** **切回**审阅者角色。完全退出作者立场，再次代入审阅者视角（参考 `小说审阅者.agent.md`）。本轮不仅检查第一轮问题是否修复，还要重新发现修订引入的新问题。标准不因"已经改过一轮"而降低。

**职责：** 在修订后的章节基础上，进行新一轮全面审阅，直接更新同一审阅报告文件。

**硬性规则（违反即视为流程违规）：**
- 只要步骤 7 已完成，步骤 8 就必须执行一次，**不得**因为"看起来已经够好"而省略。
- **审阅报告必须使用完整报告模板**，不得写简版。至少需要包含步骤 6 规定的所有板块。
- 本轮必须包含"与上一轮审阅的差异对比"（指出哪些问题已解决、哪些部分解决、哪些未解决、哪些是新增问题）。

**【强制门禁：审阅报告模板完整性检查】（同步骤 6）**
写入后、宣告完成前，逐项验证报告是否包含完整模板的所有板块。缺失任一板块 → 判定为简版，回退重写。

1. 加载通用-审阅章节正文，代入审阅者角色
2. 读取修订后的 CHAPTER_FILE 与现有 REVIEW_REPORT_FILE（可选，用于对比）
3. 执行全面审阅，使用完整审阅报告模板
4. 对照上一轮问题给出差异说明（已解决/部分解决/未解决/新增问题）
5. 审阅结果**覆盖写入** REVIEW_REPORT_FILE
6. 执行模板完整性检查，确认无缺失

**文件写入：** 审阅报告覆盖写入 REVIEW_REPORT_FILE

**完成标记：** checkpoint.nextStep = 9，写入日志。

---

### 步骤 9：第二次修订 → 第三次审阅（终审，含问题清单 + 强制模板）

**调用 skill：** 按需调用修订 Skill（同步骤 7）；`通用-审阅章节正文`（及对应的题材包装层）

**扮演角色：** **分两段切换**：9.1–9.2 为作者角色（修订模式），退出审阅者立场，回到 `.github/agents/小说作者.agent.md` 的作者视角；9.3–9.7 为审阅者角色（终审模式），完全退出作者立场，代入 `小说审阅者.agent.md` 的审阅者视角。

**职责：** 根据第二版审阅报告进行第二轮修订，再进行终审，形成带问题解决情况标记的终审版报告。

**硬性规则（违反即视为流程违规）：**
- 只要步骤 8 已完成，步骤 9 就必须执行一次。
- 步骤 9 完成前，不得根据评分决定"提前结束审阅链"。
- **终审报告必须使用完整报告模板**，不得写简版。必须包含步骤 6 规定的所有板块 + 「问题清单（对比前两轮）」小节。

| 阶段 | 动作 |
|---|---|
| 9.1 | 按需调用修订 Skill（同步骤 7），重点处理仍未解决的高优先级问题与顽固问题 |
| 9.2 | 修订后正文**覆盖写入** CHAPTER_FILE |
| 9.3 | 加载通用-审阅章节正文，代入审阅者角色 |
| 9.4 | 读取当前 CHAPTER_FILE 与既有 REVIEW_REPORT_FILE |
| 9.5 | 执行全面终审，使用完整审阅报告模板，必须包含 综合评分：X.X/10 |
| 9.6 | 在完整模板后追加「问题清单（对比前两轮）」小节，逐条标记处理状态（已解决/部分解决/未解决/新增） |
| 9.7 | 终审报告**覆盖写入** REVIEW_REPORT_FILE |
| 9.8 | **【强制门禁：模板完整性检查】** 逐项验证报告是否包含完整模板所有板块 + 问题清单小节。缺失任一 → 判定为简版，回退到 9.5 重写 |

**文件写入：** 修订后正文覆盖写入 CHAPTER_FILE；终审报告覆盖写入 REVIEW_REPORT_FILE

**完成标记：** checkpoint.nextStep = 10，写入日志。

---

### 步骤 10：质量门槛检查与回炉循环（强制 IF/THEN 闸口）

**调用 skill：** 无（编排器自执行，回炉时回到步骤 9.1–9.7 循环）

**扮演角色：** 编排器 / 质检员角色。不代入任何创作或审阅视角，只做评分提取、数字比较与循环调度决策。不因"感觉已经不错了"而放宽标准。

**职责：** 检查 REVIEW_REPORT_FILE 中的双轴评分，执行双轴前置过滤 + 综合评分 IF/THEN 分流。**本步骤的唯一职责是：提取双轴评分 → 执行双轴前置过滤 → 执行下列 IF/THEN 规则 → 根据结果分流，不得擅自改变分流目标。**

**【前置过滤：双轴各达标检查】**
从审阅报告中提取技法分与留存分：

```text
技法分 = X.X/10（从审阅报告中的"技法分：X.X/10"提取）
留存分 = X.X/10（从审阅报告中的"留存分：X.X/10"提取）
```

前置过滤规则：
```
IF 技法分 < 6.0 或 留存分 < 5.0：
   → 标记为"双轴前置过滤未通过（技法=XXX/留存=XXX）"
   → 强制回到步骤 9.1（修订），不检查综合评分
   → 修订路径分流：技法问题→回润色/去AI味；留存问题→回控制卡/创作
   → 修订后重新执行 9.3→9.5

IF 技法分 ≥ 6.0 且 留存分 ≥ 5.0：
   → 标记为"双轴前置过滤通过"
   → 进入综合评分 IF/THEN 分流
```

**【强制 IF/THEN 闸口规则（前置过滤通过后执行）】**
```
IF 综合评分 <= 9.2：
   → 你 MUST 回到步骤 9.1（修订），不得进入步骤 11
   → 修订后必须重新执行 9.3→9.5（完整独立复审）
   → 循环最多 3 轮

IF 综合评分 > 9.2 且这是该章节 首次 过线：
   → 标记为"首次过线，进入稳定性验证轮"
   → 你 MUST 回到步骤 9.1（修订），不得进入步骤 11
   → 修订后必须重新执行 9.3→9.5（对修订版完整独立复审，而非仅复查旧问题）

IF 综合评分 > 9.2 且这是该章节 连续第二轮 过线：
   → 允许进入步骤 11
```

**硬性规则（违反即为流程违规）：**
- **只有步骤 10** 允许根据综合评分决定后续动作。
- **双轴前置过滤优先于综合评分检查**——技法分 < 6.0 或留存分 < 5.0 时，不检查综合评分，直接进入修订。
- 评审报告必须包含双轴评分字段，否则视为审阅未完成。
- 评分 8.8/8.9/9.0/9.1/9.2 一律视为未达标（必须**严格大于** 9.2）。
- "连续两轮"中的第二轮复审必须是**对当前修订版本的一次完整、从严、独立的重新审阅**，既要检查上一轮问题是否已实质性修复，也要重新发现本轮新增问题；不得以"与上一轮相比有进步"替代独立评分标准。
- 回炉循环默认最多执行 8 轮。超过 8 轮仍未达标 → 暂停并记录 `blocked_review_plateau`，输出需要人工介入的说明。
- 连续两轮评分差异不超过 0.15 → 判定进入高原期，强制截停。
- 第 8 轮评分若反而低于第 7 轮 → 强制截停。

**【强制完成前提】**
本步骤的完成标记只在满足以下全部条件时写入：
- 已从 REVIEW_REPORT_FILE 中提取技法分 X.X、留存分 X.X
- 已执行双轴前置过滤
- 已根据上述 IF/THEN 规则执行正确的分流动作
- 若进入回炉循环，已在日志中记录 iteration 与评分

**文件写入：** 循环中的写入由步骤 9.1（CHAPTER_FILE）和步骤 9.3（REVIEW_REPORT_FILE）完成

**完成标记：** checkpoint.nextStep = 11，每轮回炉的 iteration 与评分写入日志。

---

### 步骤 11：更新连续性台账 + 读者阅读笔记

**调用 skill：** `通用-管理连续性冷热线`（及对应的题材包装层）（写后更新）；读者角色自执行

**扮演角色：** **分两段切换**：
- 11.1–11.3：作者角色（归档视角）。退出审阅者立场，回到 `.github/agents/小说作者.agent.md` 的作者视角，以知情人身份更新连续性台账。
- 11.4–11.6：**读者角色**。必须完全清空作者/审阅者身份，切换到普通读者视角（参考 `小说读者.agent.md`）。阅读时禁止带入任何创作意图、审阅标准或大纲知识；只记录一个真实读者的阅读感受与情绪曲线。**禁止阅读 ## 作者有话说 和 ## 章节后记 的内容。**

**职责：** 写后更新连续性动态状态，再以读者视角完整阅读章节并生成阅读笔记。

| 阶段 | 动作 |
|---|---|
| 11.1 | 加载通用-管理连续性冷热线，执行写后更新：人物动态状态、悬念/伏笔状态、回归压力、关键证据、未回收钩子 |
| 11.2 | 若定稿章节与旧资料冲突，以定稿章节为准更新，并在日志中写明修正原因 |
| 11.3 | 只记已发生事实，不预测未来章节 |
| 11.4 | 切换到读者角色，完整阅读最终版 CHAPTER_FILE |
| 11.5 | 生成阅读笔记，严格按阅读笔记模板输出完整版（必须包含模板中的所有板块与标题） |
| 11.6 | 阅读笔记**覆盖写入** READER_NOTE_FILE |

**文件写入：** 连续性台账追加条目；阅读笔记覆盖写入 READER_NOTE_FILE

**完成标记：** checkpoint.nextStep = 12，工件路径写入日志 artifacts。

---

### 步骤 12：撰写分章书评

**调用 skill：** `通用-撰写书评`

**扮演角色：** 安利者 / 推荐官角色。既不是作者（不评价自己写得多好），也不是审阅者（不打分），也不是普通读者（不只是记录感受）——而是站在"读过且想推荐给别人"的立场，提炼可公开卖点与阅读承诺。不剧透、不写创作说明。

**职责：** 为最终版章节生成独立的分章书评文件。

1. 加载通用-撰写书评
2. 书评类型：分章；对应范围标题：使用<章节文件名去扩展名>
3. 抽取可公开的卖点、阅读承诺、情绪曲线与适读人群，禁止复述完整因果链
4. 书评必须严格按书评模板输出完整版（含书评标题、正文与 # 短评 小节）
5. 书评**覆盖写入** BOOK_REVIEW_FILE

**文件写入：** 分章书评覆盖写入 BOOK_REVIEW_FILE

**完成标记：** checkpoint.nextStep = 13，工件路径写入日志 artifacts。

---

### 步骤 13：任务完成摘要输出

**调用 skill：** 无（编排器自执行）

**扮演角色：** 编排器 / 项目经理角色。不代入任何创作、审阅或读者视角，只做数据汇总、一致性核对与摘要格式化输出。

**职责：** 在流水线结束时，用标准化模板汇报本次任务是否完成、生成了哪些成果文件、以及关键约束是否满足。

**硬性规则：**
- **唯一收尾闸门**：只有在本步骤，才允许使用"任务完成摘要""本 SOP 完成""批次完成"等收尾表述。
- **严禁输出任何章节正文内容**（含摘抄、长引用、段落复述）；只能输出检查结果与数字/路径。
- 输出前必须逐项核对：正文文件、终审报告、阅读笔记、书评、字数统计、评分、日志状态，确保一致。

**输出模板（单章）：**

```text
任务完成摘要：
- 终稿正文：{CHAPTER_FILE}
- 终审报告：{REVIEW_REPORT_FILE}（综合评分：{X}/10；门槛9.2+：{达标/未达标}）
- 阅读笔记：{READER_NOTE_FILE}
- 分章书评：{BOOK_REVIEW_FILE}

终稿约束自检：
- 字数：{是/否}（Len={Len}；CJK={CJK}；BodyCJK={BodyCJK}；MeetsMinCJK={MeetsMinCJK}；WithinRange={WithinRange}；统计来源=scripts/count-chapter.ps1）

关键硬约束自检（仅结论）：
- 信息不丢失：{是/否，覆盖概况：事件链/目标代价/关系变化/设定/伏笔/章末钩子}
- 与大纲/设定一致性：{是/否，如有冲突点名冲突文件与冲突点类别}

需要进一步操作（如有）：{列出1-3条最重要的下一步}
```

**批量模板见 references/章节终审门槛与摘要规范.md。**

**文件写入：** 日志 status = completed，最终 checkpoint 写入。

## 批量模式（强制：逐章完整闭环）

### 核心原则

**批量模式 ≠ 相位流水线。** 批量模式 = 逐章独立运行步骤 0→13，一章完成后再进入下一章。

### 禁止的"相位流水线"行为

以下行为均构成流程违规：

1. **禁止先批量写完所有章的初稿，再批量润色，再批量审阅** — 这会让每章的字数检测、审阅报告质量、评分循环全部降级。
2. **禁止一次输出多章的审阅报告** — 每章必须独立审阅、独立使用完整报告模板。
3. **禁止在审阅阶段"一次性审阅多章"** — 审阅者角色无法同时对多章执行从严审阅。
4. **禁止批量回炉** — 每章的修订→复审循环独立运行，不得把多章打包回炉。

### 正确做法

| 顺序 | 动作 | 说明 |
|---|---|---|
| 第 1 章 | 运行步骤 0→13 完整闭环 | 含字数检测→扩写循环、审阅→修订→复审→10 评分闸口、完整模板审阅报告 |
| 第 2 章 | 运行步骤 0→13 完整闭环（独立于第 1 章） | 同上，每章独立 |
| ... | ... | 逐章依次 |
| 第 N 章 | 运行步骤 0→13 完整闭环 | 同上 |

### 批量独有的允许优化

- **步骤 0（初始化）** 可一次性对所有批次的章节执行路径推导，降低重复读取环境的时间。
- **连续性台账** 可在批次的章与章之间传递，确保热线承接。
- **步骤 13（摘要）** 在最后一章完成后，追加一份批量总览摘要（模板见 references/章节终审门槛与摘要规范.md）。

### 批量执行纪律

- 必须先完成第 N 章的全部 13 个步骤（含审阅循环达标），才能进入第 N+1 章。
- 不得因为"上一章已经读过人物传记"而跳过下一章的步骤 0.2（裁判源复核）或步骤 6.3（审前裁判源复核）。
- 不得因为"上一章审阅报告已经写得很详细"而降低下一章审阅报告的模板完整性。
- 每一章的字数检测、评分闸口、报告模板检查都是独立的，互不影响。

详细规则见 references/章节批量模式与连续性日志.md。

## SOP 执行日志

每次执行本 Skill，都必须在 SOP执行日志/撰写章节/ 中创建或更新一份日志文件，用于断点恢复。

详细日志结构与更新时机见 references/章节批量模式与连续性日志.md。

## 完成定义

### 单章完成

只有同时满足以下全部条件，才允许宣告完成：

1. 步骤 0–12 已在本次执行中实际跑完，而不是依赖历史文件推断。
2. CHAPTER_FILE 已完成创作/补字/润色/去AI味/多轮回炉修订。
3. CONTROL_CARD_FILE 已落盘在写作控制卡/ 目录下。
4. REVIEW_REPORT_FILE 已被本次最新终审覆盖更新，且包含综合评分：X.X/10。
5. 连续两轮独立终审综合评分均严格大于 9.2。
6. 最新字数脚本结果已在正文最新版本上重新核对。
7. READER_NOTE_FILE 与 BOOK_REVIEW_FILE 已在本次执行中生成或覆盖更新。
8. 日志中的 status 与 checkpoint 已与真实状态一致。
9. 当前聊天输出的是步骤 13 的摘要模板，而不是阶段汇报。

### 批量完成

见 references/章节终审门槛与摘要规范.md 中的聚合门禁定义。

## 常见触发词 / 用户说法速查

- 按 SOP 把这章跑完
- 从大纲一路做到终稿
- 这几章都按闭环来做
- 一直回炉到 9.2+
- 批量跑这几章
- 带日志续跑下去别停

## 不适用情形

- 只写一章正文，不跑后续审阅与读者产物：优先使用通用-创建小说正文
- 只做审阅报告，不改稿：优先使用通用-审阅章节正文
- 只做某一步专项强化：优先使用对应专项 Skill



