chinese-novelist-skill
Chinese Novelist
Version
- Version:
2.3.0 - Version Date:
2026-05-06 - Changes: Darwin 架构升级:引入角色智能体推演机制,将写作架构从"章节任务驱动"升级为"角色认知驱动"。每章写作前推演角色8维状态(目标/信息/情绪/压力/关系/资源/时间/选择空间),让剧情从角色认知自然生长。新增角色状态快照持久化到进度仪表盘,解决长篇连载角色失真问题。评分:76.7 → 90.0 (+13.3)
- Previous Versions: see CHANGELOG.md
Overview
为中文长篇小说和网文创作提供一套可持续执行的工作流:先稳住设定与大纲,再按章节推进,持续维护人物状态、悬念台账和文风质量,避免写到后面失控、注水或前后打架。
执行入口速查
先判断用户意图,再进入对应流程。不要把所有能力一次性展开;首轮只交付当前入口最需要的内容。
| 用户意图 | 触发词示例 | 进入流程 | 首轮必须交付 |
|---|---|---|---|
| 新建小说 | "写一本"、"帮我写小说"、"从头开始" | 策划期 | 3-5 个书名候选 + 极简总纲 + 首章任务卡 |
| 继续连载 | "继续写"、"下一章" | 连载期 | 读取/索要小说目录,定位仪表盘、大纲和最近章节,再给下一章任务或正文 |
| 快速出稿 | "快写"、"先写"、"初稿" | 连载期快速模式 | 跳过场景拆分,直接写正文,并只做字数和基础钩子检查 |
| 修改章节 | "修改第 X 章"、"重写"、"打磨" | 修改工作流 | 定位章节,诊断问题,判定修改级别,再针对性改写 |
| 自动写完 | "自动写完整本"、"全部写完"、"autopilot" | 自动驾驶模式 | 自动补齐缺失项,选定书名,创建/更新项目文件,并立即开始第 1 章或下一章 |
| 完稿发布 | "写完了"、"准备发布"、"导出 epub" | 收尾期 / Export | 完稿门控或 EPUB 导出路径 |
| 质量检查 | "字数检查"、"AI 味检查"、"检查节奏" | 脚本工具 | 运行对应脚本并解释结果 |
首轮输出契约
每次响应先完成当前入口的最小闭环:
- 先定位阶段:明确是策划期、连载期、收尾期、修改、导出还是检查。
- 再收集缺口:只追问会阻塞下一步的缺失项;自动驾驶模式不追问,按题材模板推断。
- 立刻给可用产物:新书给书名和总纲,续写给下一章任务或正文,修改给诊断和修改方案,检查给脚本结果。
- 少解释流程:除非用户问方法,不要长篇介绍本 skill;把流程体现在产物里。
- 维护文件状态:凡是创建、续写、修改章节,都同步更新
99-进度仪表盘.md中的进度、人物状态和悬念状态。
When to Use
- 用户要从零开始写中文小说、网文、长篇故事、连载故事
- 用户已有设定,想补大纲、人物档案、世界观、章节规划
- 用户要续写已有章节,要求前后连贯
- 用户要重写某章,增强钩子、节奏、对白、人物张力或减少 AI 味
- 用户要将小说导出为 EPUB 电子书(如"帮我导出 epub"、"把这本书导出为电子书")
- 用户要检查章节字数(如"帮我看看这章多少字")
三阶段工作流
本 skill 采用简化后的三阶段工作流:
| 阶段 | 目标 | 出口条件 | 适用场景 |
|---|---|---|---|
| 策划期 | 锁定大纲、人物、首章任务 | 首章任务卡完成 | 从零开始或重置项目 |
| 连载期 | 按章推进,持续输出 | 大纲章节全部完成 | 已有基础,继续写作 |
| 收尾期 | 完稿检查、结局收束 | 出版门控通过 | 全部章节完成 |
阶段切换
用户说... → 进入...
- "帮我写个小说" / "从头开始" → 策划期(从极简大纲开始)
- "继续写" / "下一章" → 连载期(自动读取进度)
- "写完了" / "准备发布" → 收尾期(完稿检查)
⚠️ 阶段转换检查点
策划期 → 连载期(必须确认):
- 极简大纲已完成,logline 清晰
- 主角身份和核心冲突明确
- 用户已确认书名
- 首章任务卡已设计
人工模式 → 向用户确认:"大纲和首章任务已就绪,是否开始写第 1 章?" 自动驾驶模式 → 自动通过,立即开始写第 1 章(书名自动选推荐项排名第 1)
连载期 → 收尾期(必须确认):
- 大纲规定的所有章节已写完
- 所有活跃悬念有明确的回收或延后说明
- 用户明确表示"写完了"或"准备收尾"
人工模式 → 向用户确认:"全部章节已完成,是否进入完稿检查?" 自动驾驶模式 → 自动通过,直接进入完稿检查
写作速度开关
在连载期内,支持两种速度:
| 模式 | 触发词 | 特点 | 质量检查 |
|---|---|---|---|
| 快速模式 | "快写"、"先写"、"初稿" | 跳过场景拆分,直接输出 | 仅字数 + 基础钩子 |
| 标准模式 | 默认 / 不明确时 | 完整流程 | 红绿灯检查 |
快速模式原则:写出来比写对更重要。写完再改,不打断创作流。
🤖 自动驾驶模式(Autopilot)
当触发词包含"自动写完整本"、"全部写完"、"写完整本书"、"自动完成"、"autopilot"时,进入自动驾驶模式。此模式下,AI 自主走完从策划到收尾的全流程,不停顿等待人工确认。
与人工模式的核心区别
| 环节 | 人工模式 | 自动驾驶模式 |
|---|---|---|
| Intake 缺失项 | 暂停追问用户 | 从初始请求最大程度推断,推断不出用题材模板填充 |
| 书名选择 | 生成 3-5 候选等用户选 | 自动选推荐项(排名第 1 的候选) |
| 阶段转换 | 向用户确认后进入 | 自动通过检查点,继续下一阶段 |
| 每章写完 | 交付后等待用户反馈 | 自动回写状态,立即开始下一章 |
| 修改后确认 | 向用户确认 | 自动视为通过,继续 |
| 收尾期 | 用户确认后才进入 | 大纲章节全部写完后自动进入 |
自动驾驶安全机制
自动驾驶模式虽不等待人工确认,但需遵守以下护栏:
| 规则 | 说明 |
|---|---|
| 红灯重试上限 | 同一章红灯不通过,最多重写 2 次(不是 1 次),2 次不过则标注问题后继续 |
| 连续失败熔断 | 连续 3 章红灯不通过 → 强制暂停,输出诊断报告,等待人工介入 |
| 章节上限保护 | 单章最长不超过 8000 字,防止失控膨胀 |
| 悬念过期强制 | 即使自动驾驶,仍严格遵守 5/10 章过期预警(这是质量底线,不可跳过) |
| 进度报告 | 每写完 5 章输出简报:已完成 X/Y 章、活跃悬念 N 个、红灯通过率、预估剩余 |
Intake 自动填充规则
当用户初始请求中信息不足时,按以下规则自动填充:
| 缺失项 | 自动填充策略 |
|---|---|
| 故事引擎 | 根据题材自动选择:玄幻→升级流、悬疑→解谜流、言情→成长流、都市→逆袭流 |
| 叙事视角 | 默认第三人称(最通用) |
| 篇幅目标 | 用户指定优先;未指定时根据题材模板填充(如玄幻 50-100 章、悬疑 20-40 章);默认 30 章×3000 字 |
| 文风关键词 | 根据题材选择:玄幻→热血爽快、悬疑→冷峻紧凑、言情→细腻温暖 |
| 目标读者 | 默认对应题材的主流读者群 |
| 主角缺陷 | 根据题材模板配对(如:玄幻→过度自信、悬疑→偏执、言情→不信任他人) |
题材模板(自动填充用)
| 题材 | 故事引擎 | 篇幅 | 文风 | 主角缺陷 |
|---|---|---|---|---|
| 玄幻修仙 | 升级流:境阶体系 + 资源竞争 + 越级挑战 | 50-100 章 | 热血爽快 | 过度自信→吃大亏→学会敬畏 |
| 都市重生 | 逆袭流:前世经验 + 二次机会 + 逐步翻盘 | 30-50 章 | 冷静务实 | 前世傲慢→重生后学会谦逊 |
| 悬疑推理 | 解谜流:核心谜题 + 线索链 + 反转揭示 | 20-40 章 | 冷峻紧凑 | 偏执追真相→代价极高→学会放下 |
| 言情甜宠 | 成长流:相遇→误会→和好→在一起 | 30-50 章 | 细腻温暖 | 不信任他人→被温暖感化 |
| 职场商战 | 升级流:从小员工到行业大佬 | 30-50 章 | 干练利落 | 过于理想主义→碰壁→学会变通 |
| 历史穿越 | 逆袭流:现代知识 + 古人环境 + 改变历史 | 30-60 章 | 沉稳大气 | 自视甚高→时局教训→学会敬畏时代 |
| 科幻未来 | 升级流:技术突破 + 资源竞争 + 文明对抗 | 30-50 章 | 理性冷峻 | 过度依赖技术→人性代价→学会平衡 |
| 武侠江湖 | 升级流:武学进境 + 江湖恩怨 + 正邪抉择 | 30-60 章 | 豪迈苍凉 | 执念复仇→悟道放下 |
| 恐怖灵异 | 解谜流:诡异事件 + 规则探索 + 生存对抗 | 20-40 章 | 压抑阴冷 | 好奇心太重→付出代价→学会敬畏未知 |
| 校园青春 | 成长流:学业挑战 + 友情爱情 + 自我发现 | 20-30 章 | 清新明快 | 逃避现实→被迫面对→勇敢担当 |
未覆盖题材:使用最接近的模板(如末日→科幻,古言→历史),故事引擎默认升级流,文风默认"紧凑流畅",缺陷默认"执念→代价→成长"。
自动写作循环
进入自动驾驶后,连载期按以下循环执行,直到大纲全部章节写完:
while 大纲还有未写章节:
1. 读取进度仪表盘 → 获取当前状态
2. 检查悬念状态 → 处理过期悬念
3. 明确本章任务 → 目标/阻碍/转折/钩子
4. 场景拆分 → 3-6个场景
5. 写正文 → 完整章节(不超过8000字)
6. 质量检查 → 红灯项必须通过
7. 回写状态 → 更新进度仪表盘
8. 自动开始下一章 → 不停顿
红灯项未通过时:自动重写该章节最多 2 次。2 次后仍不通过,标注问题后继续下一章。
连续失败熔断:连续 3 章红灯不通过 → 强制暂停,输出诊断报告,等待人工介入。
收尾触发
大纲全部章节写完后,自动进入收尾期:
- 执行出版门控检查(倒序检查 + 烂尾预警)
- 输出完稿报告
- 如用户要求,自动运行 EPUB 导出
策划期流程
进入策划期后,按以下顺序执行:
- Intake → 补齐关键信息(7 项)(详见下方 Intake 章节)
- 素材积累(如需)→ 题材涉及专业领域时,参考 04-素材积累.md 收集资料,标记"必须准确"vs"可以虚构"
- 书名生成 → 生成 3-5 个候选书名供用户选择(详见下方 书名生成 章节)
- 创建文件 → 按 Required Files 创建大纲和仪表盘
- 规划确认 → 按 Planning Rules 锁定核心内容
- 用户确认 → 阶段转换检查点通过后,进入连载期
Intake
只补问真正缺失的关键信息,优先补齐以下 7 项:
- 故事引擎(核心机制、代价/资源、升级规则)
- 题材 / 子类型
- 一句话 premise 或核心冲突
- 主角身份、最大欲望、致命缺陷
- 目标读者、文风关键词、禁忌
- 叙事视角(第一人称 / 第三人称 / 群像)
- 篇幅目标与交付模式
如果用户只给了模糊想法,不要空泛追问;应给出具体备选并推荐更稳的方案。
关于故事引擎: 如果用户说不清引擎,用引导问题帮助提炼:
- 「读者追这本书的理由是什么?是主角的成长?还是谜题解开的那一刻爽感?」
- 「主角每赢一次,代价是什么?代价会越来越大吗?」
- 「这个故事到最后,代价会大到什么程度?」
书名生成
策划模式开始时,必须为小说生成 3-5 个候选书名供用户选择。每个书名需在 20 字以内,且必须满足以下原则:
命名原则
- 避免模板感:不直接使用「xxx 的 xxx」「xxx 传」「xxx 记」等通用套路
- 有画面感或隐喻感:标题能引发读者联想,激发好奇心
- 体现核心主题或人物命运:不是单纯描述事件,而是暗示更深层的东西
- 音韵节奏:中文书名要顺口、有抑扬顿挫
标题结构参考
| 类型 | 公式 | 示例 |
|---|---|---|
| 悬念型 | 「反常识/矛盾/设问」 | 《她杀了他三次》《没有人能活着离开》 |
| 意象型 | 「核心意象 + 延伸」 | 《枯叶刀》《深海里的牙》《第七次下雪》 |
| 人物命运型 | 「身份/处境 + 悬念」 | 《扫地僧的秘密》《被遗忘的继承人》 |
| 双关型 | 「表里两层含义」 | 《局中人》(既是棋局,也是局外人视角) |
| 诗意型 | 「文学性表达」 | 《春风不度玉门关》《一蓑烟雨任平生》 |
生成流程
- 分析故事引擎(核心机制、代价、升级规则)—— 书名往往暗示机制
- 提取 2-3 个关键词作为标题元素
- 运用上表中的结构,组合生成 5 个以上候选
- 评估每个候选的:独特性、画面感、与主题的关联度
- 精选 3-5 个最佳选项,每项附上一句话说明推荐理由
- 让用户最终确认书名
示例输出
根据你的设定,我生成以下候选书名:
1. **《枯叶刀》** — 以主角标志性武器为意象,暗示她看似脆弱实则锋利
2. **《第七次下雪时我来接你》** — 数字+时间承诺,营造悬疑与浪漫交织
3. **《没有人能活着离开这个镇》** — 反常识宣言,直接激发读者好奇心
4. **《她的名字是秘密》** — 聚焦核心悬念,暗示名字背后的隐情
5. **《雾中来信》** — 意象型,营造神秘通信的紧张感
推荐优先考虑「枯叶刀」或「第七次下雪时我来接你」,前者更独特,后者更易引发好奇。
Required Files
在 novels/<书名>/ 内创建或更新:
核心文件(必须):
00-大纲.md→ 使用 outline-template-v1-minimal.md(默认,10 个字段,5 分钟完成)99-进度仪表盘.md→ 使用 progress-dashboard-template.md(自动生成,AI 维护)
可选深化文件(按需选用):
01-人物档案.md→ 使用 character-template-v2.md(默认推荐,欲望 - 恐惧双引擎驱动写作)或 character-template.md(v1 简单静态版)02-世界观与伏笔.md→ 使用 story-bible-template.md(世界观复杂时补充)
章节文件:
第XX章-标题.md→ 使用 chapter-template.md
专用文件(按需):
03-多线管理.md→ 使用 references/03-多线管理.md(仅多线叙事小说)03-悬念追踪表.md→ 使用 references/09-悬念生命周期管理.md(悬念超过 3 条时必须启用)03-悬念-章节匹配.md→ 使用 references/10-悬念-章节匹配矩阵.md(长篇连载时启用)
Planning Rules
开始批量写章节前,至少锁定以下内容:
logline- 主线冲突、对抗力量、利害关系
- 主角外部目标与内在成长弧线
- 结局类型与兑现方式
- 采用的结构模板(参见 plot-structures.md)
- 逐章功能分配
- 未回收悬念、伏笔、时间线、关系状态
人物档案(推荐 v2): 使用 character-template-v2.md,核心包括欲望 - 恐惧双引擎(驱动写作决策)、声音指纹(保持对白一致性)、缺陷 - 失败映射(让人物真实可信)
除非用户明确要求跳过规划,否则不要直接写完全书。即使用户要求”直接开写”,也先产出一页精简总纲再动笔。
质量检查红绿灯
每章交付前,执行三级检查:
红灯项(必须过关)
- 变化原则:本章发生了不能删除的变化(情节推进/关系变化/状态改变)
- 字数达标:≥3000 字(快速模式≥2500 字)
- 钩子存在:结尾有明确的悬念/问题/张力
- 人物一致:主要人物行为符合设定
黄灯项(建议优化)
- AI 味程度(运行
python3 scripts/check_ai_style.py <章节文件路径>自动检测) - 对白自然度
- 展示 vs 讲述比例
AI 味检测详情: 检测 9 种症状(空泛形容词、四字成语、情绪标签句、解释连接词、过度书面化对白、视角混乱、信息倾倒、时间转折词、句式均匀),详见 references/ai-style-examples.md(改写范例)和 references/ai-style-by-genre.md(按题材专项防治)
绿灯项(完稿时统一检查)
- 伏笔回收状态
- 整体节奏曲线
- 人物弧线完整性
执行原则:红灯项必须全部通过;黄灯项超标时给出修改建议;绿灯项在收尾期统一处理。
连载期写作循环
每写一章都按这个循环执行:
- 读取上下文:先读
99-进度仪表盘.md获取当前状态,再读00-大纲.md、最近章节摘要、02-世界观与伏笔.md - 检查悬念:查阅进度仪表盘中的悬念状态,如有🔴过期悬念,本章必须提及;如有🟡即将过期悬念,本章建议推进
- 角色状态推演(核心新增):在决定"本章写什么"之前,先推演每个主要角色的当前状态,让剧情从角色认知自然生长,而非由任务驱动。详见下方「角色智能体推演」章节
- 明确本章任务:基于角色状态推演结果,确定本章目标 / 阻碍 / 转折 / 结尾钩子
- 场景拆分(标准模式):拆 3-6 个场景,再落正文;快速模式跳过此步直接写
- 写正文:开头前 20% 必须尽快进入冲突,参考 chapter-guide.md
- 如果在写首章,额外参考 opening-design.md
- 对话、扩写、连贯性、结尾钩子分别参考:
- dialogue-writing.md
- content-expansion.md
- consistency.md
- hook-techniques.md 或按章节位置选用 13-钩子映射表.md
- scene-design-v2.md(默认推荐,含场景任务检查卡和价值测试)或 scene-design.md(v1 基础版)
- style-polishing.md
- AI 味改写:ai-style-examples.md 和 ai-style-by-genre.md(按题材专项防治)
- 质量检查:运行
python3 scripts/check_chapter_wordcount.py <章节文件路径>检查字数;按「质量检查红绿灯」执行三级检查(见上方) - 回写状态:更新章节摘要、人物状态、伏笔状态与章节进度到
99-进度仪表盘.md;同时更新角色认知状态和压力状态(见「角色智能体推演」章节) - 自动驾驶模式专用:回写完成后立即开始下一章,不停顿等待反馈
悬念管理
连载期间(人工和自动驾驶均适用),每章写作前必须检查悬念状态,防止悬念过期或遗忘。
每章悬念操作流程:
- 查看
99-进度仪表盘.md中的悬念状态 - 标记本章要操作的悬念:
- 推进(给出新线索/新进展)
- 提及(保温,防止过期)
- 解决(回收悬念)
- 新增(本章引入新悬念,需检查活跃悬念≤6 条)
- 写入章节钩子中
悬念过期预警规则:
- 🟡 即将过期:5 章未提及 → 本章必须提及
- 🔴 已过期:10 章未提及 → 必须在本章推进或解决
详细参考: references/09-悬念生命周期管理.md(状态定义和预警规则) references/10-悬念-章节匹配矩阵.md(章节 - 悬念匹配和强度检查)
角色智能体推演
核心理念:每写一章前,先让 AI 把每个主要角色当下的认知状态和压力状态过一遍,再决定他这一章去找谁、说什么、做什么。这将写作架构从"任务驱动"升级为"角色认知驱动",让角色行为从"作者安排"变成"角色自然反应"。
为什么需要角色智能体
传统问题:
- 角色行为服从剧情需要,而非角色自身逻辑
- 长篇写作时角色容易"失忆"或行为不一致
- 缺少"角色在当前压力下会主动做什么"的推理
智能体方案:
- 每个主要角色是一个独立的"智能体",有自己的认知状态、压力状态、目标和选择空间
- 每章开始前,先推演每个角色的当前状态,再决定他们的行动
- 角色行为由其认知和压力决定,而非由章节任务决定
角色状态推演的 8 个维度
在每章写作前(步骤 3),对每个主要角色进行以下推演:
| 维度 | 推演问题 | 输出 |
|---|---|---|
| 1. 目标 | 这个角色当前最想达成什么?短期目标和长期目标是否冲突? | 当前首要目标 + 目标冲突 |
| 2. 信息 | 这个角色知道什么?不知道什么?他的认知与真相的差距是什么? | 已知信息清单 + 认知盲区 |
| 3. 情绪 | 这个角色当前的情绪状态?是愤怒、恐惧、焦虑还是兴奋? | 主导情绪 + 情绪强度(1-10) |
| 4. 压力 | 这个角色面临什么压力?时间压力、道德压力、生存压力? | 压力源 + 压力等级(1-10) |
| 5. 关系 | 这个角色与其他角色的关系状态?信任度、依赖度、冲突度? | 关系网络 + 关系变化 |
| 6. 资源 | 这个角色有什么资源(金钱、人脉、技能、信息)?缺什么? | 可用资源 + 资源缺口 |
| 7. 时间 | 这个角色有多少时间?是否面临截止日期或倒计时? | 时间窗口 + 紧迫度 |
| 8. 选择空间 | 基于以上 7 个维度,这个角色有哪些合理的行动选项? | 3-5 个可能的行动 + 每个行动的代价 |
推演流程
步骤 1:识别主要角色
- 从
01-人物档案.md中提取主要角色(通常 2-5 个) - 主要角色 = 有独立目标 + 会主动行动 + 影响剧情走向的角色
步骤 2:读取角色上一章的状态
- 从
99-进度仪表盘.md的"角色状态快照"区域读取 - 如果是首次推演,从
01-人物档案.md初始化
步骤 3:逐个推演角色状态
- 按 8 个维度逐一推演
- 重点关注:信息差(角色不知道的真相)、压力源(驱动角色行动的动力)、选择空间(角色的理性选择)
步骤 4:生成角色行动预测
- 基于推演结果,预测每个角色在本章最可能做什么
- 格式:
[角色名] 会 [行动],因为 [认知/压力原因]
步骤 5:设计角色互动
- 如果多个角色的行动会产生交集,设计互动场景
- 如果角色之间有信息差,设计戏剧反讽(A 知道但 B 不知道)
步骤 6:确定本章任务
- 基于角色行动预测,确定本章的目标、阻碍、转折、钩子
- 此时的"任务"是角色行动的自然结果,而非外部强加
推演输出示例
## 第 X 章角色状态推演
### 角色 A(主角)
- **目标**:找到失踪的妹妹(长期);今天必须拿到线索(短期)
- **信息**:知道妹妹最后出现在码头;不知道妹妹已被绑架
- **情绪**:焦虑(8/10),开始怀疑自己的判断
- **压力**:时间压力(9/10,48 小时内必须找到);道德压力(是否要用非法手段)
- **关系**:与警察 B 的信任度下降(B 认为他隐瞒信息)
- **资源**:有一个线人的联系方式;缺钱(无法支付线人费用)
- **时间**:剩余 36 小时
- **选择空间**:
1. 去找线人(代价:需要借钱或欠人情)
2. 自己去码头调查(代价:可能打草惊蛇)
3. 向警察 B 坦白(代价:可能被限制行动)
**预测行动**:A 会去找线人,因为时间压力太大,他无法等警察的慢节奏。他会向朋友 C 借钱。
### 角色 B(警察)
- **目标**:破案(长期);今天要审讯嫌疑人(短期)
- **信息**:知道码头有黑帮活动;不知道 A 有线人
- **情绪**:怀疑(6/10),觉得 A 在隐瞒什么
- **压力**:职业压力(7/10,上级要求尽快破案)
- **关系**:与 A 的信任度下降;与上级的关系紧张
- **资源**:有警方数据库;缺少关键证据
- **时间**:今天必须有进展
- **选择空间**:
1. 跟踪 A(代价:违反程序)
2. 审讯嫌疑人(代价:可能打草惊蛇)
3. 申请搜查令(代价:时间太长)
**预测行动**:B 会跟踪 A,因为他怀疑 A 知道更多信息。这会导致 B 发现 A 的线人。
### 本章互动设计
- **场景 1**:A 去找朋友 C 借钱(展示 A 的压力和资源困境)
- **场景 2**:A 与线人见面(B 在暗中跟踪)
- **场景 3**:B 突然出现,打断 A 与线人的对话(冲突爆发)
- **结尾钩子**:线人在逃跑时留下一句话:"你妹妹还活着,但你们都找错方向了"
角色状态快照(进度仪表盘新增区域)
在 99-进度仪表盘.md 中新增以下区域:
## 🎭 角色状态快照(第 X 章后)
| 角色 | 目标 | 情绪 | 压力 | 关键信息 | 下一步倾向 |
|------|------|------|------|---------|-----------|
| 主角 A | 找到妹妹 | 焦虑 8/10 | 时间压力 9/10 | 知道码头线索 | 去找线人 |
| 警察 B | 破案 | 怀疑 6/10 | 职业压力 7/10 | 怀疑 A 隐瞒 | 跟踪 A |
| 朋友 C | 帮助 A | 担心 5/10 | 无 | 不知道危险 | 借钱给 A |
**关系网络变化**:
- A ↔ B:信任度从 7/10 降至 4/10(B 开始怀疑 A)
- A ↔ C:依赖度从 5/10 升至 8/10(A 需要 C 的帮助)
**信息差地图**:
- A 不知道:妹妹已被绑架、绑匪的真实身份
- B 不知道:A 有线人、线人的身份
- C 不知道:A 面临的真实危险
何时跳过角色推演
以下情况可以简化或跳过:
- 快速模式:只推演主角,其他角色用简化版(目标 + 压力 + 下一步)
- 单一 POV 小说:只推演 POV 角色,其他角色作为"环境"处理
- 过渡章节:如果本章只是场景转换或时间跳跃,可以只更新状态不做完整推演
角色推演与人物档案的关系
- 人物档案(
01-人物档案.md):角色的静态设定(性格、背景、欲望、恐惧) - 角色状态推演:角色的动态状态(当前目标、情绪、压力、选择)
- 关系:人物档案是"角色是谁",状态推演是"角色现在想做什么"
推演时,角色的行动必须符合人物档案中的性格和欲望-恐惧引擎。如果推演结果与人物档案冲突,优先检查人物档案是否需要更新。
修改工作流
当用户要求修改、重写或打磨某一章时,按以下流程执行:
第一步:问题诊断
读取目标章节,对照质量标准,找出具体问题。用一句话描述问题(如"开头 300 字太拖,没有进冲突")。
常用问题诊断清单:
开头问题
- 开头是否在 20% 内进入冲突?
- 是否有"钩子"吸引读者继续看?
- 是否有过多的背景/设定说明?
节奏问题
- 是否有过多的"summary"(概述)而非"scene"(场景)?
- 是否在某段停留太久?
- 每章是否有明确的事件推进?
对白问题
- 对白是否推进了剧情/关系?
- 对白是否有多余的"解释腔"?
- 人物说话是否符合性格?
结尾问题
- 结尾是否有钩子?
- 是否留下了悬念或转折?
一致性问题
- 是否与前文设定冲突?
- 人物状态是否连贯?
第二步:修改分级
根据问题类型和严重程度,判断修改级别:
| 级别 | 问题类型 | 修改范围 | 预计耗时 |
|---|---|---|---|
| 轻度 | 错别字、语句不通顺、标点错误 | 局部修改 | 10-20 分钟 |
| 中度 | 某段对话不够自然、某个场景不够具体 | 单场景/单段落 | 30-60 分钟 |
| 重度 | 节奏问题、结构问题、开头钩子太弱 | 多场景或全章重写 | 1-3 小时 |
第三步:针对性修改
根据诊断结果,按问题类型选择参考文档:
- 钩子太弱 → 参考 hook-techniques.md 或按章节位置选用 13-钩子映射表.md
- 节奏太慢 → 参考 chapter-guide.md 的节奏部分,长篇参考 11-叙事节奏框架.md
- 对白太水 → 参考 dialogue-writing.md,对人物声音一致性参考 character-template-v2.md 的声音指纹部分
- 场景空洞 → 参考 scene-design-v2.md(含场景任务检查卡和价值测试)和 content-expansion.md
- AI 味重 → 参考 ai-style-examples.md 和 ai-style-by-genre.md
- 整体重写 → 从 chapter-template.md 的场景拆分开始
第四步:验证
- 重读修改后的段落,确认问题已解决
- 运行字数检查:
python3 scripts/check_chapter_wordcount.py <章节文件路径> - 运行 AI 味检测:
python3 scripts/check_ai_style.py <章节文件路径> - 确认字数没有严重缩水(轻度修改不应影响总字数)
- 红灯项复核:修改后仍须通过所有红灯项(变化原则、字数、钩子、人物一致)
- 向用户确认:"修改完成,主要改动:[列出改动]。确认满意?"
节奏检查
每写完 5-10 章后,运行健康检查脚本,生成报告:
python3 scripts/check_novel_health.py <小说目录路径>
检查项:
- 字数统计(平均、最高、最低、标准差)
- 场景分布与连续重复警告
- 字数健康评分与节奏健康评分
报告模板: references/05-节奏健康报告.md
触发时机:
- 每写完 5-10 章后
- 用户说"检查节奏"时
Export
当用户要求导出 EPUB 时:
- 确认小说目录路径(用户已提供或在 novels/ 下查找)
- 运行导出脚本:
python3 scripts/generate_epub.py <小说目录路径> - 可选参数:
--author <作者名>覆盖大纲中的作者-o <输出路径>指定输出文件位置--lang en导出英文版(需要先通过翻译功能生成en/目录)
- 告诉用户生成的 EPUB 文件路径
清洁导出说明:
- 导出脚本只提取章节文件中的
## 正文部分 - 如果需要完全干净的章节文件(无任务卡、无复盘等),创建平行文件:
- 写作版:
第01章-标题.md(含任务卡、场景拆分、复盘) - 清洁版:
第01章-标题-正文.md(仅正文)
- 写作版:
质量检查清单(详细版)
红绿灯是日常快速检查(4 项)。需要深入诊断时,展开以下 6 项量化指标。完整检查项列表见 quality-checklist.md。
| 原则 | 量化指标 |
|---|---|
| 变化原则 | ≥1 个主角"选择"事件 + ≥1 个"状态变化" |
| 悬念原则 | 章节内悬念提及≥1 + 新增悬念≥1 |
| 钩子原则 | 结尾含悬念触发词 + 结尾句不完整 |
| 展示原则 | 对话标签<30% 对话段落 + 含动作描写对话≥50% |
| 文风原则 | 连续相同句式≤3 句 + 单段"很 X"形容词≤2 个 + 句长标准差>5 |
| 场景原则 | 有明确任务的场景≥3 + 场景间有信息差或状态变化 |
收尾期流程
进入收尾期后,按以下三步执行:
第一步:绿灯质量检查
逐项检查绿灯项(连载期仅做红绿灯,此处展开全部绿灯):
- 伏笔回收:每条伏笔是否已回收或有明确的续作延后说明
- 节奏曲线:整体紧张度是否符合设计的节奏曲线,对照 11-叙事节奏框架.md
- 人物弧线:主角弧线是否完成(起点→倒退→突破→兑现),对照 character-template-v2.md
- 时间线连贯:季节/天气/节日是否前后一致,运行
python3 scripts/check_timeline.py <小说目录路径>
第二步:完稿润色
第一轮:通读全书
- 从第 1 章读到最后一章,记录:节奏突变处、文风不统一处、前后矛盾处
- 重点检查:前 3 章是否足够抓人、中点是否有重大转折、结局是否有兑现
第二轮:统一文风
- 运行
python3 scripts/check_ai_style.py --all <小说目录路径>批量检测 - 标记重度 AI 味章节,优先重写
- 运行
python3 scripts/character_tracker.py <小说目录路径>检查人物一致性 - 标记声音突变处,对齐人物声音指纹
第三轮:细节补强
- 对照 ai-style-examples.md 改写残留 AI 味
- 对照 style-polishing.md 打磨措辞
- 补充感官细节(视觉/听觉/触觉/嗅觉/味觉至少覆盖 3 种)
第三步:出版门控
通过出版门控检查(见下方出版门控章节),确认达到目标级别后即可交付。
版本管理建议:
- 初稿:完成后以
v1-draft标记,运行全量检查 - 二稿:润色后以
v2-polished标记,重点修复 AI 味和人物一致性 - 终稿:通过出版门控后以
v3-final标记,可导出 EPUB
续作钩子决策:
- 只有用户明确要求时才保留续作钩子
- 续作钩子不得以牺牲本书完整性为代价
- 预留续作时,核心悬念必须回收,只留新悬念苗头
多线叙事写作循环
当小说包含 3 条以上叙事线(多 POV、群像)时,连载期写作循环需增加以下步骤:
线切换时机决策
每章写完前,决定下一章写哪条线:
| 因素 | 决策规则 |
|---|---|
| 悬念紧迫度 | 有🔴过期悬念的线优先 |
| 读者期待度 | 上一条线刚抛出大悬念→切到另一条线保温 |
| 信息差管理 | A 线刚揭示的关键信息,B 线角色尚不知→切 B 线制造戏剧反讽 |
| 章节节奏 | 连续 2 章高强度同线→必须切换到另线喘息 |
| 时间同步 | 两条线事件同时发生时→交替推进 |
POV 转换规则
- 每章单一 POV:默认一章一个视角人物,不在章内切换
- 换章即换线:章与章之间切换线,用进度仪表盘记录当前线
- 换线保温:切到新线的前 200 字内,必须提及该线上次的关键事件(读者可能忘了)
- 跨线交汇:两条线的角色终于相遇时,选择读者更关心的 POV 来写,另一线用事后回溯
进度仪表盘多线扩展
## 📍 当前位置
- 正在写:第___章([线名]线)
- 当前主线:[线名]
- 各线进度:
| 叙事线 | 最新章节 | 活跃悬念 | 状态 |
|--------|---------|---------|------|
| A 线 | 第 10 章 | 2 个 | 🟢 正常 |
| B 线 | 第 8 章 | 3 个 | 🔴 1 个过期 |
| C 线 | 第 9 章 | 1 个 | 🟡 需推进 |
详细参考
references/03-多线管理.md(多线叙事管理模板)
中断恢复协议
长期中断后返回写作时(超过 3 天未写),按以下流程恢复:
人工模式恢复
- 读取仪表盘:获取当前进度和悬念状态
- 校验仪表盘:读最近 3 章摘要,检查仪表盘信息是否与实际一致
- 生成续写简报:
## 续写简报 **当前进度**:第 X 章已写,共 Y 章 **当前阶段**:连载期/收尾期 **各线状态**:[线名]线进度、悬念 **未回收伏笔**:列出 ID 和首次出现章节 **过期悬念**:🔴列出所有需立即处理的 **人物当前状态**:主角位置/情绪/目标、关键关系 **下章任务**:目标/阻碍/钩子 **一致性校验**: - [ ] 仪表盘人物状态与最近章节匹配 - [ ] 仪表盘悬念状态与追踪表匹配 - [ ] 仪表盘章节数与实际文件数匹配 - 向用户确认:"续写简报已生成,确认信息正确后开始写第 X 章"
自动驾驶模式恢复
- 自动执行上述 1-3 步
- 发现仪表盘过期信息时,自动从章节文件重建
- 不等待确认,直接开始写作(但首章输出后附简报)
从任意章节恢复
当用户要求跳到某章重写或从断点恢复时:
- 读取目标章节及前后各 1 章
- 更新仪表盘中的"当前位置"
- 检查该章到最新章之间是否有悬念或伏笔依赖
- 如有依赖,提醒用户:"重写第 X 章可能影响第 Y 章中对[Z 悬念]的推进"
断路器恢复协议(自动驾驶)
当连续失败熔断触发后:
- 输出诊断报告:哪几章失败、具体红灯项、可能原因
- 暂停等待人工
- 人工确认后,提供恢复选项:
- 选项 A:从失败章节重写(重置重试计数器)
- 选项 B:跳过失败章节,标注问题后继续下一章
- 选项 C:降级为人工模式,后续章节手动确认
- 人工选择后恢复写作,重置连续失败计数器
Completion
在收尾期时,必须额外检查:
- 主线悬念是否回收
- 主角弧线是否完成
- 设定规则是否前后一致
- 是否存在遗失角色、断裂线索、无兑现伏笔
- 是否需要留下续作钩子;只有用户要时才保留
- 终稿收尾方式参考 ending-design.md
出版门控
在进入出版或发布前,按以下流程做系统性验收:
倒序检查法
从结局往前推,验证每章是否服务结局:
结局要求 → 倒数第 3 章 → 倒数第 2 章 → 倒数第 1 章 → 结局
- 结局是否兑现了大纲承诺?
- 每章的进展是否导向结局?
- 是否有偏离结局的章节?
常见烂尾模式预警
| 烂尾模式 | 描述 | 检查项 |
|---|---|---|
| 机械降神 | 结局靠突然出现的力量解决 | [ ] 结局的解决方案是否在前文有铺垫? |
| 主角光环 | 主角轻易获胜,无代价 | [ ] 主角是否付出了合理的代价? |
| 支线烂尾 | 支线挖坑不填 | [ ] 每条支线是否都有回收? |
| 匆忙收场 | 结尾突然,像赶工 | [ ] 结局是否有足够的篇幅? |
| 开放结局滥用 | 所有问题都没回答 | [ ] 核心问题是否都有答案? |
| 反派弱化 | 反派结局时突然变弱 | [ ] 反派是否保持了一致性? |
出版分级标准
| 级别 | 要求 |
|---|---|
| 入门级 | 字数达标、无明显错误、主线完整、人物一致 |
| 专业级 | 入门级 + 无逻辑漏洞、伏笔基本回收、节奏良好 |
| 出版级 | 专业级 + 所有伏笔回收、主题清晰、人物有成长弧线 |
详细检查清单: references/06-出版门控.md
叙事节奏曲线
设计全书的紧张程度起伏,确保节奏有峰有谷,避免越写越平。
选择曲线类型
根据你的故事类型,选择一种节奏曲线:
A. 递进型 — 紧张度持续上升 适用:升级流、复仇流、打怪升级
B. 波浪型 — 紧张度波浪起伏 适用:悬疑、探险、探险解密
C. 高原型 — 紧张度保持中高水平 适用:都市、职场、情感
D. 反转型 — 开头紧张,结局更紧张 适用:宫斗、权谋、阴谋
关键节点
每个故事必须有这些关键节点:
| 节点 | 位置 | 紧张度 | 必须元素 |
|---|---|---|---|
| 开篇钩子 | 第 1 章 | ★★★☆ | 危机/悬念/目标 |
| 第一个小高潮 | 前 10% | ★★★☆ | 小胜利或小失败 |
| 中点转折 | 50% | ★★★★★ | 认知翻转/重大失败 |
| 中段升级 | 60-70% | ★★★★☆ | 代价增大 |
| 倒数第二个高潮 | 85% | ★★★★★ | 终极选择 |
| 结局 | 100% | ★★★★★ | 终极对决/终极选择 |
曲线跟踪
每写完 5 章,对照设计检查紧张度:
- 紧张度低于设计 → 需要加强
- 紧张度高于设计 → 可能太快,需要喘息
详细模板: references/07-叙事节奏曲线.md(基础版)或 references/11-叙事节奏框架.md(推荐,含三层体系和 5 种题材模板)
喘息章设计: 如果连续 3 章以上高强度,参考 references/12-喘息机制.md 设计喘息章(20% 余波 +60% 收获/关系 +20% 新威胁)
人机协作
当用户以人机混合方式写作时,按以下指南执行:
协作分工
| 内容类型 | 人类写 | AI 写 | 说明 |
|---|---|---|---|
| 核心设定 | ✅ | 人物性格、核心冲突、底线 | |
| 关键情节 | ✅ | 重大转折、结局设计 | |
| 对白风格 | ✅ | 人物语言特点 | |
| 具体场景 | ✅ | 场景描写、环境渲染 | |
| 过渡衔接 | ✅ | 章节之间的过渡 | |
| 扩写 | ✅ | 已有大纲的详细内容展开 | |
| 修改 | ✅ | 明确指出问题所在 |
上下文传递
每次让 AI 继续写之前,必须传递上下文:
**当前进度**
- 章节:第 X 章
- 当前场景:...
- 主要人物:...
- 上文关键事件:...
**写作要求**
- 继续写:...(具体说明要写什么)
- 风格参考:...(文风要求)
- 注意:...(特别注意事项)
交接协议
人类修改完一段后,告诉 AI:
**人类修改记录**
- 修改位置:第 X 章 第 Y 段
- 修改原因:...
- 继续要求:...
**上一段结尾**
"..."(引用上段结尾,让 AI 接上)
快速续写模式(默认): 用户只需说"继续写",AI 自动从 99-进度仪表盘.md 提取上下文,无需手动填写交接格式。
详细模板: references/08-人机协作-v2.md(推荐,含快速续写和信息提取协议)或 references/08-人机协作.md(v1 基础版)
异常处理
| 异常 | 人工模式 | 自动驾驶模式 |
|---|---|---|
| 指令矛盾 | 优先具体指令,暂停确认 | 以最新指令为准 |
| 项目不存在 | 引导进入策划期 | 直接启动策划流程 |
| 仪表盘缺失 | 自动从章节重建 | 同左 |
| 章节损坏 | 回退上一章,提醒检查 | 跳过并标注 |
| 字数不达标 | 标注差距 + 扩写建议 | 自动扩写 1 次 |
| 长期中断后返回 | 生成续写简报 + 校验仪表盘 + 确认(见中断恢复协议) | 自动生成简报 + 重建仪表盘 + 直接继续(见中断恢复协议) |
| 脚本失败 | 用 quality-checklist.md 自检 | 同左 |
| 人物设定冲突 | 以最新文件为准,提醒确认 | 以大纲为权威 |
| 断路器触发 | — | 强制暂停→输出诊断报告→提供 3 个恢复选项(见断路器恢复协议) |
| 多线叙事线偏移 | 提醒用户当前在哪条线,确认后切换 | 自动选择最紧迫的线继续 |
脚本工具
| 脚本 | 用途 | 使用方式 |
|---|---|---|
check_chapter_wordcount.py |
章节字数检查 | python3 scripts/check_chapter_wordcount.py <文件或--all 目录> |
check_ai_style.py |
AI 味检测(9 种症状) | python3 scripts/check_ai_style.py <文件或--all 目录> |
check_novel_health.py |
小说健康体检(字数 + 节奏) | python3 scripts/check_novel_health.py <目录> |
check_timeline.py |
时间线一致性检查 | python3 scripts/check_timeline.py <目录> |
character_tracker.py |
人物一致性检查 | python3 scripts/character_tracker.py <目录> |
generate_epub.py |
EPUB 导出 | python3 scripts/generate_epub.py <目录> |
translate_to_english.py |
翻译成英文 | python3 scripts/translate_to_english.py <目录> |
Translation
当用户要求翻译成英文时执行:
执行流程
第一步:准备阶段
- 确认小说目录和翻译范围(全本 / 部分章节)
- 读取上下文文件:
00-大纲.md→ 书名、作者、类型、简介01-人物档案.md→ 人物信息02-世界观与伏笔.md→ 世界观要点
第二步:生成术语表 3. 分析小说内容,提取需要统一的术语:
- 角色人名及拼音
- 修炼体系/境界名称
- 武器、法宝、门派名称
- 中文特有词汇(功夫、气功、灵气等)
- 量词和时间表达
第三步:并行翻译 4. 将章节分成多个批次(每批 2-3 章,相邻章节在同一批次) 5. 为每个批次创建一个 subagent,并行翻译 6. 每个 subagent 携带:小说信息 + 术语表 + 翻译规则
第四步:最终校对 7. 所有翻译完成后,派一个 subagent 做全局校对:
- 检查术语一致性
- 检查人名一致性
- 检查剧情衔接
- 修正发现的问题
第五步:保存结果
8. 汇总所有翻译结果,写入 en/ 目录:
Chapter-001.md,Chapter-002.md等
术语表格式
生成包含以下分类的统一术语表,翻译时严格遵守:
- 人物名称:
[中文名] → [Pinyin](如 张三 → Zhang San) - 修炼体系/境界:
[中文] → [English](如 筑基 → Foundation Building) - 门派与武器:
[中文] → [Pinyin or English] - 中文特有表达:
盏茶 → the time it takes to drink a cup of tea
并行翻译
- 将章节分批(每批 2-3 章,相邻章节在同一批次)
- 为每批创建 subagent 并行翻译,携带:小说信息 + 术语表 + 翻译规则(保持叙事节奏、统一译名、对话自然流畅)
- 全部完成后派 subagent 做全局校对(术语一致性 + 人名一致性 + 剧情衔接 + 风格统一)
- 结果写入
en/Chapter-XXX.md
英文版导出
英文版也支持 EPUB 导出:
python3 scripts/generate_epub.py <小说目录路径> --lang en