con un clic
novel-review
// 章节 / 全书校稿。37 维质量审查:4 维统计学(Python 脚本)+ 33 维主观(LLM 评估)+ 一致性 + 伏笔账 + 硬规则。当用户说"校稿"、"审一遍"、"检查第 X 章"、"看看哪里有问题"、"全书审查"、"review chapter"、"audit" 时触发。审稿只评结构和完成度,**不评文笔**(文笔由 novel-style-engine + novel-chapter 在生成阶段控制)。
// 章节 / 全书校稿。37 维质量审查:4 维统计学(Python 脚本)+ 33 维主观(LLM 评估)+ 一致性 + 伏笔账 + 硬规则。当用户说"校稿"、"审一遍"、"检查第 X 章"、"看看哪里有问题"、"全书审查"、"review chapter"、"audit" 时触发。审稿只评结构和完成度,**不评文笔**(文笔由 novel-style-engine + novel-chapter 在生成阶段控制)。
| name | novel-review |
| description | 章节 / 全书校稿。37 维质量审查:4 维统计学(Python 脚本)+ 33 维主观(LLM 评估)+ 一致性 + 伏笔账 + 硬规则。当用户说"校稿"、"审一遍"、"检查第 X 章"、"看看哪里有问题"、"全书审查"、"review chapter"、"audit" 时触发。审稿只评结构和完成度,**不评文笔**(文笔由 novel-style-engine + novel-chapter 在生成阶段控制)。 |
37 维质量审查(借鉴 inkos continuity.ts,独立重写)。 四种检查并行:
| 层 | 检查类型 | 实现 | 维度数 |
|---|---|---|---|
| 1 | 客观统计 | Python 脚本 | 4 维 |
| 2 | 硬规则违规 | Python 脚本 | 10+ 条规则 |
| 3 | 伏笔账核对 | Python 脚本 | 1 维(伏笔回声 + 揭 1 埋 1) |
| 4 | 一致性 / 完成度 | LLM 评估 | ≥ 17 维 |
输出统一的批注式问题列表,不直接改稿。
借鉴 inkos:审稿只看 结构 + 完成度,不审文笔。
文笔由 novel-style-engine + novel-chapter 的 writing-guidelines 在生成阶段控制。
本 skill 不应该说"这一句不好看 / 这一段啰嗦"——那种主观品味问题留给作者本人。
本 skill 评判的是:
novel-chapter Step 6.5 自动调用 Python 脚本部分)输入:章节号 N
输出:chapters/ch-NNN.review.md(批注列表)
Step 1 - 跑 4 个 Python 脚本
python3 .../check_ai_tells.py --chapter chapters/ch-008.md
python3 .../check_post_write.py --chapter chapters/ch-008.md --vault {vault}
python3 .../check_hook_ledger.py --chapter chapters/ch-008.md --vault {vault}
python3 .../check_consistency.py --chapter chapters/ch-008.md --vault {vault}
每个脚本输出 JSON:
{
"passed": true/false,
"issues": [
{
"severity": "critical|warning|info",
"dimension": "ai-tells.paragraph-uniformity",
"location": "L 23-25",
"description": "...",
"suggestion": "..."
}
]
}
Step 2 - LLM 主观维度评估
把 4 类脚本结果合并后,调 LLM 跑剩余 LLM 维度(详见 references/audit-dimensions.md):
LLM 输出 JSON:
{
"passed": true/false,
"overall_score": 0-100,
"issues": [...],
"summary": "一句话总结"
}
Step 3 - 合并 + 输出
把所有 issue 合并,按位置排序,生成 chapters/ch-NNN.review.md:
---
type: review
chapter: 8
reviewed-at: 2026-05-20 14:30
overall-score: 82
passed: true
critical-count: 0
warning-count: 3
info-count: 5
---
# Ch 8 校稿报告
## 总评(一句话)
结构稳,节奏 OK,但 sera 力量使用的描写过度(与角色克制基调有偏离)。
## Critical(0)
无。
## Warning(3)
### [L 23] 节奏 / pacing-monotony
段落变异系数 0.12(阈值 < 0.15),段落长度过于均匀。
建议:在 L 18-30 之间插入一个 1-2 句的短段,制造节奏起伏。
### [L 67] OOC / character-fidelity
sera 在对峙时主动说出"我可以放过你们",与其 character-voice "嘴硬主角型 + 沉默克制" 不符。
建议:把这句改为动作(如把武器收起来)或沉默。
### [L 88] hook-ledger / advance-evidence
hook H001 在 advance 列表,但正文中关键词"皇家纹章"、"金线"均未出现。
建议:在 L 80-95 之间加入 sera 注意到斥候腰间纹章的细节。
## Info(5)
### [L 5] ai-tells / hedge-density
套话词"似乎"出现 2 次。低于上限 3 次,仅作记录。
...
输入:vault 路径
输出:deliverables/full-review.md
跑每一章的 single chapter review,汇总:
输入:卷 ID
输出:plot/arcs/{arc}-review.md
详见各脚本文件头注释。
check_ai_tells.py4 维统计学检测(借鉴 inkos ai-tells.ts 重写):
check_post_write.py硬规则违规(借鉴 inkos post-write-validator.ts 重写):
novel-style-engine/references/anti-ai-rules.mdcheck_hook_ledger.py伏笔账核对(借鉴 inkos hook-ledger-validator.ts 重写):
## hook-账 段check_consistency.py跨实体一致性(自创 + 借鉴):
.memory/entity-state.md 是否冲突 → criticalLLM 评估部分用以下 prompt 模板:
你是中文网文结构编辑。审稿只看完成度 + 结构,不审文笔。
- ALL OUTPUT MUST BE 中文 JSON
- passed=false 仅当存在 critical issue
- overall_score 0-100 校准:
- 95-100: 可直接发表
- 85-94: 小瑕疵但顺畅
- 75-84: 明显问题但骨架稳
- 65-74: 多处问题影响阅读
- <65: 结构崩坏需重写
审稿维度:
1. OOC 检查(vs character.md voice patterns)
2. 时间线检查(vs timeline.md)
3. 设定冲突(vs worldbuilding/)
4. 战力崩坏(vs systems/)
5. 数值检查
6. 伏笔检查(结构层;脚本已做表面检查)
7. 节奏检查(参考 pacing-principles)
8. 信息越界
9. 利益链断裂
10. 配角降智 / 工具人化
11. 爽点虚化
12. 台词失真
13. 流水账
14. POV 一致性
15. 支线停滞
16. 弧线平坦
17. 读者期待管理
18. 章节备忘偏离
[输入上下文]
- 章节正文:{...}
- 章纲:{...}
- 当前 arc:{...}
- 出场角色卡:{...}
- 涉及世界观:{...}
- 当前 .memory/entity-state.md:{...}
输出 JSON:
{
"passed": ...,
"overall_score": ...,
"issues": [{"severity":"...","dimension":"...","location":"...","description":"...","suggestion":"..."}],
"summary": "..."
}
完整 37 维清单见 references/audit-dimensions.md。
novel-chapter 的 rewrite / fix-ai 任务(或用户手改)compile_style.py 或重新写章节每次跑完后:
chapters/ch-NNN.review.md 写好