name: novelist-write
description: 小说写作一站式入口——用户只需调用 write, 即跑完整链: 前置就绪(目录环境+核心设计)→ 四要素确认 → 生成正文 → 收尾链(一致性检查→校对→去AIGC→定稿)。当用户说"写第N章/继续写/接着写剧情/写下一章/写这本书"时调用。设计未就绪会自动引导补(design), 全流程由本 skill 编排, 用户不必分别调各 skill。本 skill 独占 章节/ 目录的新增写入。
user-invocable: true
argument-hint: "[可选章节号; 缺省=进度下一章自动续写]"
arguments: [章节号]
novelist-write — 小说写作一站式入口
用户只需调用 write, 完整流程都包含: 前置确保设计就绪 → 编写 → 检查 → 审查 → 校对 → 去AIGC → 定稿。本 skill 是顶层编排者, 引用 design/check/proofread/humanize 等落地各环, 用户不必逐个调用。正文不是想到哪写到哪——每章动笔前用四要素锁定边界与因果, 生成后必过收尾链才定稿。
强制流程(不可跳步)
- 前置就绪检查(一站式起点, 缺则补齐再写) — 确保写作有据可依:
- 目录环境 — 无小说目录(人物/世界观/章节/...) → 引用
novelist-init 建。
- 核心设计 —
大纲/总纲.md 核心冲突/结局为空, 或主要人物缺档 → 硬停, 引用 novelist-design(含主线+主要人物+世界观, 内部再引 craft 选叙事镜片)先把设计做出来, 禁无设计硬写正文。
- 题材(可选) — 用户想兼顾市场且题材未定 → 引用
novelist-trending 选题。
- 设计已就绪 → 直接进 step 1 编写。
- 定位章节 — 读
章节/_索引.md 确定本次写第几章、标题。"下一章" → 取索引最大号+1。
- 编写中检查(第 2 章起必做) — 动笔前, 引用
novelist-check 对已写章节 + 当前世界观/人物/情节做一致性扫描, 拿到「当前事实快照」(人物关系/世界观规则/未回收伏笔)。第 1 章可跳过(无前文)。
- 四要素确认(生成正文前的硬闸门, 必须全部确认) — 见
references/pre-write-checklist.md。逐项与用户确认, 缺任一 → 硬停 不动笔:
- (i) 本期出场人物 + 故事梗概 — 谁出场、这一章大致讲什么;
- (ii) 事件发生前 — 这些人物的关系、世界观、相关设定是什么样;
- (iii) 事件发生后 — 同样三项在本章之后变成什么样(状态变更 = 本章真正产出);
- (iv) 结局 — 本章如何收尾(钩子/转折/落点)。
- 派 chapter-writer 生成正文 — 用
Agent 工具(真实 tool_use, 非叙述)派 chapter-writer, 6 字段 prompt 自包含: 目标(写第N章) / 已知(四要素 + 事实快照 + 文风: 引用 novelist-craft 按本书题材+本章性质给的叙事镜片与具体手法) / 范围(只写 章节/第NNN章-标题.md) / 输出格式(正文 md) / 验收(符合四要素、不违反规则.md) / 失败处理(缺设定标「需要:」回传)。
- 落盘 + 状态变更同步 — 正文存
章节/第NNN章-<标题>.md(状态=草稿); 把四要素(iii) 的状态变更回写到 人物/关系、世界观、情节/伏笔(引用对应 skill), 保持事实源最新。
- 生成后收尾链(检查 → 校对 → 去AIGC → 定稿, 不可跳) — 书写 ≠ 生成完就完, 草稿必须过三环才算定稿。逐章或攒数章批量跑:
- a. 一致性检查 — 引用
novelist-check 审本章与全书冲突(派 continuity-auditor)。有 致命 → 转 novelist-rewrite 修, 禁带致命冲突进下一环。
- b. 校对 — 引用
novelist-proofread 校错别字/语法/标点(派 proofreader)。
- c. 去 AIGC — 引用
novelist-humanize 去 AI 味(派 humanizer): 匀质句长/陈词过渡/模板腔/空泛抽象。
- d. 定稿分门控 — 三环各出分(一致性/文字来自 check/proofread 纯算术; 人味来自 humanize 自带脚本), 算综合定稿分(纯算术加权): 定稿分 = 一致性×0.5 + 文字×0.2 + 人味×0.3。子环合格线: 一致性 >95 / 文字 >95 / 人味 >95。综合定稿分 >95 且一致性 >95 → 定稿; 否则退回得分最低的子环修复重评, 留对应中间态, 不谎报定稿。
- 更新索引 —
章节/_索引.md 更新该章行(字数/收尾链后的状态); 更新 元数据/进度.md。
- 回报 — 摘要本章产出 + 状态变更 + 收尾链结果(检查/校对/去AIGC 各是否过), 提示继续下一章。
四要素为何是闸门
不确认四要素就写, 等于让 agent 即兴发挥——人物关系、世界观会随手漂移, 累积成不可回收的设定崩坏。四要素把"事前→事后"的状态差显式化, 这个差才是本章存在的理由, 也是后续一致性检查的对照基线。详见 references/pre-write-checklist.md。
失败模式(触发 → 一线修复 → 仍失败兜底)
| 触发 | 一线修复 | 仍失败兜底 |
|---|
| 四要素缺项 | 硬停, AskUserQuestion 逐项补 | 用户给不全 → 不动笔, 禁靠虚构补四要素 |
| 编写中检查发现前文冲突 | 先解冲突(改设定或调本章计划)再写 | 冲突大 → 转 novelist-rewrite 处理前文 |
| chapter-writer 返回标「需要: <缺设定>」 | 补设定(character/worldview)后重派 | 连续 2 次缺料 → 硬停 回报用户补设定 |
| 生成正文违反 规则.md(力量越界等) | 退回 agent 重写, 附违反点 | 仍违反 → 人工改或调整世界观规则 |
| 状态变更未回写, 事实源滞后 | 立即回写人物/世界观/伏笔 | —— |
| 收尾链某环未过(check 致命冲突 / 校对漏 / AI 味重) | 退回该环修复重跑 | check 反复不过 → 转 rewrite; 仍不过 → 硬停 回报用户 |
references/pre-write-checklist.md 不存在 | 用内置四要素(i-iv)直接逐项 AskUserQuestion 问, 不依赖外部文件 | 提示用户跑 novelist-init 补全目录结构 |
章节/_索引.md 不存在 | 从第001章起, 新建索引文件并写表头行(章号/标题/字数/状态) | 仍失败(权限) → 跳过索引, 仅写章节正文, 告知用户手动建索引 |
反例黑名单(命中=错, 重来)
| # | 禁做 | 改为 |
|---|
| 1 | 没确认四要素就直接生成正文 | 四要素是硬闸门, 缺项 硬停 |
| 2 | main 自己直接写正文 | 派 chapter-writer agent(真实 Agent tool_use) |
| 3 | 第 2 章起跳过编写中一致性检查 | 动笔前必引用 novelist-check 拿快照 |
| 4 | 口头说"已派 agent"但无 Agent 调用 | 宣称≠调用, 必有真实 tool_use 再回传 |
| 5 | 写完不回写状态变更到事实源 | 四要素(iii) 必同步人物/世界观/伏笔 |
| 6 | 正文违反力量体系代价 | 守 规则.md 边界, 越界退回重写 |
| 7 | 生成完就当定稿, 跳过收尾链 | 书写=生成+检查+校对+去AIGC, 三环全过才定稿 |
| 8 | 收尾链某环没过就标「定稿」 | 留中间态(草稿/已检查/已校对), 不谎报 |
| 9 | 设计未就绪就硬写正文 | step 0 先确保 init+design 就绪, 缺则引用补 |
| 10 | 让用户自己分别去调 design/check/humanize | 本 skill 一站式编排全链, 用户只需 write |
一站式入口: 用户只调 write, 本 skill 编排全链——前置(init/design/trending)→ 生成(chapter-writer)→ 收尾链(check/proofread/humanize)→ 定稿。各 skill 仍可单独调(深度使用), 但 write 是默认完整流程入口。独占 章节/ 新增写入。书写 = 设计 + 生成 + 检查 + 校对 + 去AIGC 一体。