# Novel Write

> 长篇小说章节写作主流程。读完前情/伏笔/语录/档案/写作技巧后生成新章节正文，并提示走去 AI 味润色和写后同步。触发词：写第X章、续写、新章节、扩写、章节正文、novel-write。

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

---


# novel-write

**用途**：长篇小说项目里"写一章"的标准工作流。在没有 RTK.md 的项目里禁止执行——必须先跑 `novel-init`。

## 输入要求

用户应说明：
1. 章节号（第 X 章）。如未说，从 `章节大纲.md` 推算下一未写章节。
2. 章节名（可选）。如未说，从 `章节大纲.md` 取。
3. 本章特殊要求（可选）：必须出现的事件 / 必须埋的伏笔 / 必须收回的伏笔 / 不能出现的内容。

## 执行流程

### 第 1 步：上下文加载（必须，按顺序）

**全部读取，不可跳过**。如缺失任一文件，先提示用户走 `novel-init` 或手动补齐：

1. `RTK.md` — 项目规则、题材气质、文风底线（**最高优先级**）
2. `AGENTS.md` — 项目入口（如指向其他规则文件，一并读取）
3. `小说大纲.md` — 确认本章在全书的位置和功能
4. `章节大纲.md` — 本章的节点和情绪目标
5. `前情梳理.md` — **必须完整读完最近 3 章的摘要**，不可只看本章前一章
6. 本章直接相邻的章节正文：至少回看上一章原文，必要时回看最近 2-3 章原文
7. `伏笔清单.md` — 当前活跃伏笔、需要本章兑现的伏笔
8. 本章涉及人物的 `人物档案/*.md` — 说话方式、当前情感状态、关系进度
9. `经典语录.md` — 已有金句，避免重复相似句式
10. **写作技法（两层，优先级：项目 > 通用）**
    - 项目专属：`写作技巧/*.md`（项目自己沉淀的题材专属技法）— **优先**
    - plugin 通用：`${CLAUDE_PLUGIN_ROOT}/skills/novel-write/reference/*.md` — 兜底
    - 通用 reference 包含：01 运镜 / 02 感官 / 03 细节 / 04 心理 / 05 场景四字诀 / 06 信息密度 / 07 章末结构 / 08 画面感总则 / 09 期待值管理 / 10 情绪控制力
    - **按需读取**：不每次全读，按本章场景类型选 1-2 篇查阅（详见各 reference 末尾的"题材适配建议"）
    - **先判适配再用**：读某篇前先看它顶部的「适用边界」块 + `reference/README.md` 的「技法×网文适配 速查表」，技法不匹配本书题材/节奏就不用——网文默认别把 01/02/04/08 当每段必用
11. `审稿报告/*.md`（如存在）— 历轮审稿提炼的"作者习惯性弱点"，**写作时主动规避**

### 第 2 步：本章写作目标确认（不可跳过）

读完上下文后，用一段结构化输出向用户确认：

```
【第X章 写作确认】
本章在全书位置：第N幕 / 第M阶段 / 占总章节 X%
情绪基调：↑/↓/→/⚡
主要节点：
1. ...
2. ...

需要兑现的伏笔：
- 伏笔A（埋于第Y章）

需要新埋的伏笔：
- 待埋（轻、自然）

人物状态承接：
- 主角：从第X章 [情绪/位置] 接续
- 配角：...

时代/环境细节（如题材需要）：
- ...

本章字数预期：~XXXX 字

是否开始生成初稿？（如有调整请告诉我）
```

用户确认后才进入第 3 步。

### 第 3 步：生成初稿

按以下原则写：

#### 题材气质遵守

- 严格执行 `RTK.md` 里的"文风要求"和"感情线/主线要求"
- 用户提供的"核心气质 ≤5 个"是**红线**，不可违背
- 如题材有专属符号库（在 `写作技巧/` 下），优先使用

#### 通用写作铁律

| 编号 | 铁律 | 反例 | 正例方向 |
|------|------|------|---------|
| W1   | 一个情绪瞬间只写一次，不要写完场景再用一句"她忽然意识到……"做内心独白复述 | "她忽然明白，有些重逢……" | 一个动作 + 一个余响 |
| W2   | 章节结尾不连续使用"感悟收束"。可用"未完动作 / 物件落定 / 群消息切断 / 场景叠加"等替代 | "她忽然觉得，所谓青春……" | "抽屉合上时，发出一声很轻的'咔'。" |
| W3   | 高频套话黑名单（具体清单写在 RTK.md）每章上限 1 次，最好 0 次 | "心跳漏了一拍" / "岁月静好" | 用具体感知细节代替 |
| W4   | 对话必须符合角色身份和年龄。遮住名字看不出是谁说的 = 失败 | 所有角色都说一样的话 | 词汇量 / 句长 / 口头禅 / 思维方式分化 |
| W5   | 场景描写至少完成一项功能：情绪 / 性格 / 推进 / 主题。否则可删 | 纯背景板 | 环境作为情绪容器 |
| W6   | 每段至少有一个信息量推进。不写空转段落 | 反复抒情 | 推进事件、关系、内心或细节 |
| W7   | 视角自洽。第三人称限定/第一人称里，主角不感知的事不写 | 主角看不见但描写另一房间 | 留空 or 切视角章节 |
| W8   | 主角**初遇超常/危机**要走真实心理弧线：不信→目睹代价→惊慌→慢慢适应。第一次别像老手，别一上来就冷静解读规则/破局；**首次多半靠碰巧活，别人的死/代价才教会他** | 普通人第一次进诡异副本就淡定推理、精准避开 | 先怕、先蒙、先付代价，能力和冷静是后面挣出来的 |
| W9   | **禁用职业/专业术语给场景做旁白**——氛围杀手，一秒出戏。角色的专业只藏在**思维方式**里（对矛盾敏感、会做假设再验证），不在词汇里 | "他脑子里冒出：边界溢出、数组越界" | 用大白话写出同一个"不对劲"，专业感靠推理逻辑体现 |
| W10  | 金手指/能力升级要有**"看得见的质变时刻"**：对照（"这个我以前做不到"）＋旁人惊愕＋**打法变了**；且**必带代价**，无代价=无敌=张力崩。软成长尤其要补这三样 | 主角悄无声息变强，读者无感 | 一场戏专门让他做到过去做不到的事，并为此付出可见代价 |
| W11  | 副本/单元流**防"换地图"**：副本只是舞台，真正在爬的是多条线——金手指线 / 真相线 / 格局线 / 敌人线 / 羁绊线 / 主角身份转变线，**每过一个副本各升一格** | 一个场景换一个场景，主角原地踏步 | 换考场，不换成长；读者追的是六条线一起往上走 |
| W12  | **事实记账**（配合 novel-sync）：本章产生的"既成事实"——谁死了、揭了哪条规则/设定、埋/收了哪个伏笔、人物状态与代价变化、时间推进——必须回填，**不许和已写矛盾**。文笔可自由发挥，事实不可 | 上一章死的人下一章复活、已揭的规则装作没揭 | 写完立即 novel-sync；把"已揭规则账/人物状态账/伏笔账"记进前情梳理 |

#### 长度与节奏

- 网文向：每章 2000-4000 字，章尾必有 A/B 级拉力
- 出版向：每章 3000-6000 字，允许 C 级缓冲章但不可连续 3 章
- 校园青春 / 都市言情 / 现实题材：偏向 4000-6000 字

### 第 3.5 步：自审循环（写完必做，3 轮，不可跳过）

初稿写完**不直接交付**。自己当审稿人，读→改→再读→再改，**至少 3 轮**，每轮换一个侧重：

- **第 1 轮 · 逻辑与一致性**：规则/设定自洽、能力不越界、时间线/数字/人物状态不与前文和台账矛盾；顺手删"不是 X 是 Y"式旁白和多余定语、职业术语。
- **第 2 轮 · 恐怖/爽点·节奏·OOC**：本章有没有兑现（解谜/高潮/质变）？有没有记忆点意象？人物行为符不符合已立性格？有没有平段或注水？用词有没有陈词滥调？
- **第 3 轮 · 连续性收尾·去 AI 味·回填台账**：跑去 AI 味（第 4 步），通读一遍确认顺，把本章既成事实回填（第 6 步）。

每轮都要**真读真改**，找到不同层级的问题；发现硬伤（逻辑矛盾/能力开挂/前后打架）必须当轮修掉。参照第 3 步铁律表 W1–W12 和项目 `RTK.md` 逐条自检。

> 经验：最狠的坑（时间线矛盾、数字对不上、过时设定）往往到第 3 轮连续性检查才现形——别省这一轮。

### 第 4 步：去 AI 味润色（必须）

初稿完成后**不直接交付**，先按 `RTK.md` 里 V3/V4 去 AI 味规则做一轮：

- 命名式表达（"它更像……"）→ 删除或具象化
- 抽象总结句 → 具体动作/物件代替
- 模板腔连接词（"与此同时""值得一提的是"）→ 删
- 章末感悟句若已达上限 → 改用其他章尾结构

本 plugin 内置 `zh-novel-polish` skill，专为中文小说语境设计，会按 RTK §4.1-4.3 的项目化规则扫一遍八大叙事病灶。这一步**强制执行**，不可跳过。

### 第 5 步：输出定稿

按 RTK.md 的命名规范保存：

```
<书名>-第X章-章名.md
```

文件头部加 YAML frontmatter（可选）：
```yaml
---
chapter: X
title: 章名
word_count: XXXX
emotional_tone: ↑/↓/→/⚡
status: draft / revised
---
```

### 第 6 步：提示同步

在输出末尾**必须**提示用户：

```
✅ 第X章正文已保存到 <文件名>

⚠️ 请立即运行 novel-sync 同步以下文件，否则下一章会基于过时上下文：
- 前情梳理.md（追加本章摘要 + 关键关系变化 + 下一章承接点）
- 人物档案/*.md（涉及人物：[列表]）
- 伏笔清单.md（本章新埋：[列表] / 本章回收：[列表]）
- 经典语录.md（本章值得留下的句子：N 句，由你筛选）
```

## 异常处理

| 情况 | 处理 |
|------|------|
| `RTK.md` 不存在 | 拒绝执行，提示先跑 `novel-init` |
| `前情梳理.md` 上次更新落后于已写最新章 | 拒绝执行，提示先跑 `novel-sync` 补齐 |
| 用户说"写第 X 章"但 X 章正文文件已存在 | 询问"覆盖 / 改写为 X.v2 / 修订模式" |
| 大纲与用户要求冲突 | 标出冲突点，征求用户裁决，不擅自改大纲 |
| 上下文超过窗口 | 优先压缩"前情梳理早期内容"和"远端章节正文"，保留最近 3 章原文 |

## 红线

- **绝不**在没有读 RTK.md 的情况下动笔
- **绝不**跳过第 2 步"本章写作确认（梗概）"直接生成正文——先把"这一章要写什么"（节点/情绪/伏笔/人物承接）讲清楚、作者拍板，再动笔
- **绝不**跳过第 3.5 步"自审 3 轮"直接交付初稿
- **每写完 3 章，跑一次 `novel-review` 全面审查**（多角色 agent 逐维过一遍）——别攒到 5-6 章才审，问题越攒越难改、越容易连环污染后续章节
- **绝不**为了字数堆砌空转段落
- **绝不**自行修改人物档案或大纲（那是 `novel-architect` 和 `novel-sync` 的活）
- 用户特别强调"克制""不滥情"等气质时，宁可少写一些情绪，也不堆叠

## 触发示例

- "写第 23 章"
- "续写第 23 章"
- "扩写一下林野闯祸那段"
- "/novel-write 第 23 章"

