1---2name: novelist-check3description: 检查小说整条故事线的一致性(18 子项)。当用户说"检查一致性/查冲突/审故事线/有没有矛盾/设定对不对"时调用; 也被 novelist-write 在编写前引用取事实快照。mode=detect(默认只读审查产冲突清单) / mode=fix(单点冲突直接 Edit 修正, 段落级派 chapter-writer)。派 continuity-auditor agent 审查, 报告落 元数据/检查报告/。4---56# novelist-check — 故事线一致性审查(检测/修复同 skill, 入参决定)78把全书当成一个事实系统来核对: 任何"此处说 A、彼处说 ¬A"都是缺陷。本 skill 支持 `mode=detect|fix` 两态: **detect(默认)只读审查产冲突清单**(现状, 向后兼容); **fix 在审查后单点冲突直接 Edit 修正, 段落级重写派 chapter-writer**。910## mode 入参解析1112```13input 首token14 "detect" → mode=detect(默认), 范围=剩余token15 "fix" → mode=fix, 范围=剩余token16 其他 → mode=detect, 范围=原input ← 向后兼容(现 check 是只读)17```1819| mode | 行为 | 改文件? |20|---|---|---|21| detect(默认) | 派 continuity-auditor 只读审查, 产冲突清单(现状) | 否 |22| fix | 审查 + 单点冲突 auditor 直接 Edit 正文修正(文字级事实陈述); 段落级重写派 chapter-writer | 是(仅冲突点) |2324## 审查维度(6 维 × 3 子项 = 18 子项, 每子项独立 detect + 严重度 + 计数)2526| 维度 | 子项编号 | 子项 | 典型缺陷 |27|---|---|---|---|28| 1 设定冲突 | 1a | 物品定义不一 | 同一物品前后属性/外形不一 |29| | 1b | 术语定义不一 | 同一术语前后所指不一 |30| | 1c | 组织定义不一 | 同一组织前后性质/成员不一 |31| 2 人物矛盾 | 2a | 关系突变无铺垫 | 关系无铺垫地反转 |32| | 2b | 行为违背性格动机 | 行为与既定性格/动机冲突 |33| | 2c | 生死状态错乱 | 已死又出场 / 生死状态前后矛盾 |34| 3 世界观违规 | 3a | 力量超规则边界 | 违反 规则.md 的力量上限 |35| | 3b | 未付代价 | 使用力量未付既定代价 |36| | 3c | 势力格局自相矛盾 | 势力版图前后自相矛盾 |37| 4 时间线错乱 | 4a | 事件顺序矛盾 | 事件先后顺序矛盾 |38| | 4b | 年龄经历对不上历史 | 年龄/经历与 历史.md 对不上 |39| | 4c | 时长跨度不合理 | 时长跨度不合常理 |40| 5 伏笔遗漏 | 5a | 过计划回收章未回收 | 伏笔.md 已过计划回收章仍「未回收」 |41| | 5b | 结尾悬空伏笔 | 全书结尾仍悬空未回收 |42| | 5c | 伏笔间相互矛盾 | 多条伏笔相互打架 |43| 6 逻辑合理性 | 6a | 因果断裂 | 因果链断裂 |44| | 6b | 关键转折动机不足 | 关键转折缺动机支撑 |45| | 6c | 过度巧合 | 关键推进靠过度巧合 |4647## 工作流(按序)48491. **解析 mode + 定范围** — 首 token 为 `detect`/`fix` → 设对应 mode, 范围取剩余 token; 否则 **mode=detect**(默认, 向后兼容), 范围=原 input。范围未给 → **默认全书自动审, 不追问**。可选: 第 N 章起 / 某人物线 / 某设定。502. **派 continuity-auditor(按 mode 授权)** — 用 `Agent` 工具(真实 tool_use)派 `continuity-auditor`, 6 字段 prompt: 目标(审 X 范围一致性, 18 子项) / 已知(事实源路径: 人物/世界观/设定/情节/章节) / 范围(detect=只读禁改任何文件; fix=允许单点 Edit 修正文字级事实陈述, 段落级重写标「派 chapter-writer」不改) / 输出格式(按 `references/conflict-rubric.md` 的单条冲突格式 + 18 子项核对清单, 每条带子项编号) / 验收(覆盖 18 子项、引用具体文件行) / 失败处理(信息不足标「需要:」)。513. **汇总报告 + 一致性健康分** — 收 agent 结果, 落 `元数据/检查报告/<日期>-<范围>.md`, 按 `references/conflict-rubric.md` 的严重度分级(致命/重要/建议)排序。**算量化健康分**(纯算术, 直接算): 健康分 = 100 −(致命×20 + 重要×5 + 建议×1), 下限 0。**门控: 健康分 == 100 才过(零容忍, 致命=重要=建议=0)**; 建议级也扣 1 分 → 任一子项有冲突(含 建议级)即 < 100 不过, 不进收尾链下一环。524. **(mode=fix 修复路径) 未满分则修** — 健康分 < 100 时, 按 mode=fix 分流修复:53 - **单点冲突(可改一处事实陈述消除)** → continuity-auditor 直接 Edit 正文修正(如: 改年龄数字、改物品名、补一行铺垫)。判定: 冲突可「改一处事实陈述」消除 = check fix。54 - **段落级(需重写段落衔接)** → **不在 check fix 内做, 派 `novelist-rewrite` 模式 A** 重写整段。判定: 需「重写段落衔接」= rewrite 模式 A, 不属 check fix。55 - **边界铁律**: check fix 只改文字级事实陈述(段内单点), 不重写整段、不删章、不改结构(那是 rewrite 模式 A/B/C)。56 - 修后回到 step 2 重检, 直到健康分 == 100。575. **(被 write 引用时) 返回事实快照** — 若由 novelist-write 调用, 额外输出当前「人物关系 + 世界观规则 + 未回收伏笔」快照, 不必生成完整报告。586. **导向修复(detect 模式收尾) / 死循环兜底(fix 模式)** —59 - detect 模式: 有致命冲突 → **必须先用 `novelist-rewrite` 修复才能继续编写**, 禁带着致命冲突往下写; 重要 → 建议本轮修复; 建议 → **零容忍: 建议级 也阻断满分, 须修后重检到 ==100**。60 - **死循环兜底**: 连续 **3 次**重检未达 ==100 → **硬停, 转人工裁决**, 报告未过子项 + 当前健康分 + 累计修复尝试数, 禁无限重试。6162## 失败模式(触发 → 一线修复 → 仍失败兜底)6364| 触发 | 一线修复 | 仍失败兜底 |65|---|---|---|66| 范围过大 agent 超时 | 分段审(按卷/按章区间)再合并 | 仍超时 → 只审用户最关心的人物/设定线 |67| continuity-auditor 标「需要: <缺事实源>」 | 补全对应设定文件后重派 | 设定本就缺 → 报告标「设定缺失」为冲突项 |68| 报告与用户认知不符(误报) | 复核证据行, 区分真冲突 vs 风格选择 | 用户判定误报 → 标注豁免, 不强改 |69| 规则.md 本身模糊导致无法判违规 | 提示先用 worldview 明确规则边界 | 暂不明确 → 标「规则待明确」高风险 |70| auditor 18 子项报告不完整(漏某子项) | 点名要求补全该子项再重派 | 仍不完整 → 标「子项X未审」纳入健康分(未审子项每项扣3) |71| write 引用时 snapshot 超时/无历史报告 | 用最近一次检查报告代替, 标报告时间戳 | 无任何历史报告 → 硬停, 必须先跑完整 check 再继续编写 |72| mode=fix 单点 Edit 改动越界(误重写整段) | 收回 Edit, 改派 novelist-rewrite 模式 A | 越界已落盘 → 标「需人工复核改动」 |73| 连续 3 次重检未达 ==100(死循环) | 退出 fix 循环, 转人工裁决 | 报告未过子项清单 + 累计尝试数 |7475## 反例黑名单(命中=错, 重来)7677| # | 禁做 | 改为 |78|---|---|---|79| 1 | detect 模式直接改正文/设定 | detect 只读审查; 修复走 mode=fix 或 rewrite |80| 2 | main 自己通读判断, 不派 agent | 派 continuity-auditor(真实 Agent tool_use) |81| 3 | 口头说"已检查"但无 Agent 调用 | 宣称≠调用, 必有真实 tool_use |82| 4 | 报告只说"有矛盾"不给位置证据 | 每条带 子项编号 + 文件:位置 + 证据 + 严重度 |83| 5 | 漏查伏笔回收 | 18 子项必含 5a/5b/5c 伏笔核对 |84| 6 | 建议级放过不阻断 | 建议级 也扣 1 分阻断满分(零容忍, 必须 ==100) |85| 7 | fix 模式整段重写/删章(越界) | 段落级派 rewrite 模式 A; check fix 只改文字级事实陈述 |86| 8 | 死循环无限重试 fix | 连续 3 次未满分 → 硬停 转人工 |8788> mode=detect|fix 入参决定; detect 默认只读审查产冲突清单; fix 单点 Edit 修正 + 段落级派 chapter-writer/rewrite; 健康分 ==100(零冲突含建议级) 才过; 被 novelist-write 引用取快照。