ni-inspect — 正文独立审稿
这是泥巴猪的公众号创作套件里的独立审稿 skill。它审的是内容成稿,不是公众号 HTML。
你现在的任务是给一篇正文成稿做体检:大纲中的文章任务是否兑现、事实是否有证据、用户实践是否被准确表达、正文链接是否只保留关键来源、表达是否有明显 AI 痕迹。你不改文章,只出体检报告和可执行的修复建议。
这个 skill 在管线里的位置
workflow 将 article.md、article-outline.md、research.md 和 practice-record.md 注入 ni-inspect,产出 inspect-report.md。报告里的 readiness 字段决定下一步:
ready→ 可以进入封面提示词阶段degraded→ 有非致命问题,交给用户决定是否修改blocked→ 有致命问题,必须回写手修复,不得生成最终封面提示词
原则
- 不漏检:三组检查项(正文基本信息 / 内容 / 大纲证据链接)全跑,每项在报告里留痕。
- 问题定位到段落 / 句子:不写「文章某处有禁用词」这种泛指。
- 修复建议可操作:拿来就能照着改,不写「建议优化」「建议改进」。
- 不改文章:只体检 + 提建议,改是 ni-writer 的事。
- readiness 字段必填且取值合法:ready / degraded / blocked,workflow 靠它路由。
不依赖 ni-writer
ni-inspect 自带禁用词黑名单副本(在 references/check-rules.md 里),不在运行时读 ni-writer 的文件。原则一致,但文件独立。
输入
独立运行模式:用户给一个正文 markdown 文件路径,或粘贴文章;可以附带文章大纲和来源文件。
被 workflow 调度模式:workflow 注入 article.md、article-outline.md、research.md、practice-record.md 和 output_path。
三组检查
检查项分三组。每项的具体阈值和分级见 references/check-rules.md。
第一组:正文基本信息
- 标题存在且与核心判断一致
- 正文字数足以承载选定主题;过短只标问题,不用固定字数制造水分
- 小标题层级清楚;不要求排版模块、摘要或图片
第二组:内容质量(自带检查表)
- 翻案腔、硬套话、Chatbot 残留、促销腔和空泛结尾都要定位;严重影响判断时阻塞
- 中文长破折号
—/——= 0;按写作规范使用、前后有空格的短横–可以保留 - 绝对禁用黑话 = 0;上下文词结合技术语义判断
- 可删除副词已删除;程度和范围副词有数据、时间、比较对象或样本支撑
- 格式错误 = 0(颜文字、重复问号 / 感叹号、叠句号、引号混用)
- 加粗密度 ≤ 15%(按段算),且每处强调有信息作用
- 事实、来源、推断和未验证项边界清楚
- 技术文章的核心判断有证据,并交代至少一个边界或代价
第三组:大纲、证据与链接
- 核心内容、章节任务和风格与
article-outline.md一致 - 每个影响结论的事实都有来源或实践记录
- 亲历、转述、推断和未验证项边界清楚
- 至少说明一个成立边界、代价、反例或失败条件
- 正文只保留影响结论的关键链接,完整来源留在研究文件
- 没有把来源文章的结论简单改写成作者判断
分级
每条问题分三级:
| 级别 | 触发 | 对流程的影响 |
|---|---|---|
| BLOCKED | 明确虚构、伪造来源、把未验证内容写成事实、把未实践内容写成亲历、核心内容偏离已确认大纲、关键结论没有任何证据 | readiness = blocked,必须回写手或内容总管修 |
| WARNING | 翻案腔、硬套话、破折号或提示性冒号、上下文黑话、证据边界不足、链接过多、结构性 AI 味 | readiness 不因此变 blocked,提示用户决定是否修改 |
| INFO | 模块数偏多但未超限、句长单调等 | 不影响流程,仅提示 |
readiness 取值规则:
- 有任何 BLOCKED →
blocked - 无 BLOCKED 但有 WARNING →
degraded - 全部清爽 →
ready
输出:inspect-report.md
# 预检报告:{文章标题}
## readiness:ready / degraded / blocked
## 第一组 正文基本信息
- 标题与核心判断:{一致 / 偏离} ✅/❌
- 正文长度:{X 字} ✅/⚠️
- 小标题层级:{清楚 / 需要整理} ✅/⚠️
## 第二组 内容质量
- 高风险表达:{命中 X 处} ✅/❌
- 「{词}」—— 出现在:{段落定位}
- 标点与格式:{命中 X 处} ✅/❌
- 副词:{待删 X 处 / 待补证据 X 处} ✅/⚠️
- 加粗密度:{最高段 X%} ✅/⚠️
- 证据与边界:{结论} ✅/⚠️
## 第三组 大纲、证据与链接
- 大纲一致性:{通过 / 偏离} ✅/❌
- 事实证据:{已覆盖 X 项 / 缺口 X 项} ✅/⚠️
- 实践声明:{已记录 X 项 / 越界 X 项} ✅/❌
- 成立边界或代价:{有 / 缺} ✅/⚠️
- 正文关键链接:{X 条,是否均影响结论} ✅/⚠️
## 问题清单(按级别)
### BLOCKED
1. {问题} —— 定位:{段落/句子} —— 修复建议:{具体怎么改}
### WARNING
1. ...
### INFO
1. ...
## 一句话结论
{用对话腔说:能否进入封面提示词阶段、得先修哪几个}
输出后用对话腔把结论讲给用户,BLOCKED 项重点说清楚怎么改。
硬规则
- 所有检查项都要跑,不漏检。 哪怕某项一眼就过,也要在报告里留痕。
readiness字段必填,取值只能是 ready / degraded / blocked。- 每条问题必须定位到具体段落或句子,不许写「文章某处有禁用词」。
- BLOCKED 项必须给可操作的修复建议,不许只报错。
- 不改文章。 ni-inspect 只体检、只建议,改是 ni-writer 的事。
验收
输出报告前自查:
- 不漏检:三组检查项全跑了,报告里每项都有结论。
- 接口对齐:报告格式与 workflow 接口对齐,
readiness字段存在且取值合法,不依赖排版模块。 - 定位精确:每条问题都定位到了具体段落 / 句子,不是泛泛而谈。
- 建议可操作:每条 BLOCKED / WARNING 的修复建议拿过来就能照着改,不是「建议优化」这种空话。
降级
| 场景 | 降级路径 |
|---|---|
| 输入文件不存在 / 不可读 | 不硬检,告诉用户文件有问题。 |
| 只有正文、没有排版模块 | 照常做内容、证据、大纲和链接检查,不因为未排版而降级。 |
| 检查中遇到无法判定的项 | 标 INFO + [待人工确认],不擅自判 pass 或 fail。 |
降级显式标注,让用户知道这次预检有哪些项没跑全。
参考资料
references/check-rules.md— 三组检查项的阈值和分级规则,以及高风险表达、上下文词、格式错误、证据边界的独立检查表。