关于 verify-claims
verify-claims 面向论文作者,检查正文主张是否有文内证据支持。它从 LaTeX 中提取候选主张并比对数字,供作者审查;不会自行判定真伪或修改论文。
主要功能
- 01从 LaTeX 提取候选主张
- 02比对正文与表格数字
- 03分类新颖性和结果主张
- 04生成主张矩阵
- 05建议补证、限定或删除
适用场景
- 01在回复审稿意见前审查主张
- 02核对正文数字与修订后的表格
- 03在定稿前检查论文草稿
- 04找出缺乏依据的新颖性或性能主张
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ shaishavmaisuria/ research-paper-lifecycle-skills --skill verify-claims安装后在 Claude Code 中输入/verify-claims确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/claim-taxonomy.mdoverclaiming-rules.mdscripts/claim_audit.py详细介绍
核验论断
论断与证据之间的把关环节。审稿人会质疑论文声称与展示之间的差距——没有依据的“我们是首创”、没有对比的“达到最先进水平”、没有检验的“显著提升”,或正文中声称的加速效果却得不到表格支持。这项技能会找出这些候选论断,让作者为每条论断对应证据,并生成一份论断矩阵(论断 · 位置 · 证据 · 状态),以便在审稿人发现之前看清并弥合差距。
它是 verify-citations 的内容对应技能:前者证明 .bib 中的每条参考文献都能对应到真实论文;本技能则证明正文中的每个关键句子都有这篇论文中的内容(数字、图、表、实验)或真实引用作为依据。在任何草稿、回复审稿意见或终稿离开本机前,都要运行这两项技能。
适用场景
- 用户要求核验/审查/检查论断(而非引用):“我的论断有证据支持吗?”“我是否夸大了?”“结果与表格一致吗?”
- 回复审稿意见之前——审稿人最常见的批评是贡献缺乏支持或言过其实;先弥合差距,或为回复准备好证据。
- 提交终稿或 arXiv 之前——这是弱化站不住脚的“首创”说法,或修正与更新后表格不同步的数字的最后机会。
polish-tables-figures重新生成表格之后,确认正文仍与新数字相符。
输入
- 论文的
.tex文件(主文件;脚本会跟踪\input/\include)。在.bib文件旁边查找,或通过包含\documentclass的文件查找。 - 作者参与流程:本技能无法判断论断是否属实——它会找出候选项,由作者提供证据(或承认没有证据)。人来驾驶,Copilot 辅助。
- 可选:
.paper-memory/profile.yml——risk_appetite和contribution_type用于设置作者希望在创新性上采取多强的主张或保留态度(参见 Memory)。
流程
-
提取候选论断。 确定性工作应交给脚本——不要靠浏览论文来寻找论断:
python3 scripts/claim_audit.py path/to/main.tex --json /tmp/claims.json脚本会扫描正文(跳过数学内容、注释和表格),查找包含创新性标记(“first”“novel”“we are the only”“unlike prior work”)、优越性标记(“outperforms”“state-of-the-art”“best”“superior”)、程度/结果标记(“significantly”“X% improvement”“Nx faster”“substantially”)和泛化标记(“always”“in all cases”“guarantees”)的句子。脚本还会提取正文中的所有数字标记以及表格中的所有数字单元格,供你交叉核对。每个候选项都会标出类型、句子和
file:line位置。实用选项:
--type novelty(或superiority、result、generalization)——聚焦某一类论断。--numbers——仅输出正文数字与表格数字的交叉核对清单(用于回答“结果与表格一致吗?”)。--context N——为每条论断附上周边的 N 个句子。--min-confidence high——仅显示信号最强的候选项(误报更少),适用于篇幅较长的论文。
退出码:
0未找到候选论断(很少见——通常表示文件已解析但内容近乎为空;请检查输入),2找到了候选论断(正常情况——需要作者筛选,而非表示“有问题”),1操作失败(文件无法读取、参数错误)。脚本会查找论断,但不会评判论断——非零的2是预期且正常的结果,并非失败。 -
与作者一起为每项候选主张匹配证据。 这是这项技能的核心,无法自动化:脚本会标记“we achieve state-of-the-art accuracy”;只有作者(或论文自己的表 3)才能说明究竟是 哪个结果支持了这项主张。对每项候选主张,确定:
- 证据 — 支持该主张的具体结果、表格/图编号、实验、定理或引文(
\ref/\label、表格单元格或章节)。仅写“第 4 节”不算证据;“表 3,BERT-large 行,较最强基线高出 2.1 F1”才算。 - 状态 —
SUPPORTED(有证据且证据匹配)、WEAK(有证据,但支撑力度弱于主张,例如使用“显著”却没有显著性检验)、UNSUPPORTED(未找到证据)、MISMATCH(正文中的数字与表格不一致)或SCOPED(缩小范围后主张成立——见步骤 4)。
阅读 references/claim-taxonomy.md,了解每种主张类型需要哪些证据,以及审稿人通常会如何质疑。
- 证据 — 支持该主张的具体结果、表格/图编号、实验、定理或引文(
-
应用夸大主张规则。 阅读 references/overclaiming-rules.md。常见问题包括:
- “first”/“novel” 需要有理据的范围界定和文献核查——绝对化地声称“首次实现 X”,只需一个反例,就足以让人难堪。最好将其限定为“在约束 Y 下首次实现 X”。
- “state-of-the-art”/“outperforms” 需要说明对比详情:对比了哪些基线、在哪个基准上、领先多少,以及这些基线是否是当前的并经过公平调优。
- “significantly”/“substantial” 是统计学术语:需要进行检验(并注明检验方法),不能只凭均值更高。如果没有做检验,应修改措辞,而不是数据。
- 正文中的数字 必须与其概述的表格/图中的数字一致。脚本的
--numbers模式会列出正文与表格中的数值;必须逐一核对所有不一致之处(修订表格后却留下过时句子,是终稿阶段最常见的问题)。
-
与作者一起决定如何修正每项主张。 有三种诚实的做法,绝不能有第四种:
- 补足证据 — 添加或指明缺失的证据(论文中已有的结果、引文或需要开展的实验)。
- 限定范围 — 将主张缩小到证据实际支持的范围(“首次”→“在 Y 条件下首次”;“始终”→“在我们的实验中”)。
- 删除 — 如果无法提供证据或限定范围,就删除该主张。 绝不能采用第四种做法:捏造证据、结果、引文或并未进行的显著性检验。坦诚承认“这项主张缺乏证据”,胜过伪造依据。
-
编写主张矩阵,保存到
paper-workspace/review/claims-matrix.md:每项关键主张占一行,列出 主张 · 位置 · 类型 · 证据 · 状态 · 建议的修正。聊天摘要开头应列出各状态的数量,并首先列出风险最高的待处理事项(UNSUPPORTED和MISMATCH)。将本次运行记录追加到INDEX.md。 -
修正后重新运行。 作者完成修改后,重新运行
claim_audit.py(以及--numbers),确认弱化或限定范围后的主张不再触发标记,且正文与表格之间不再有数值不一致。每项关键主张都应为SUPPORTED、SCOPED,或经作者明确接受的WEAK,此时即可停止;不要陷入“持续改进”的无休止循环(最多进行几轮,并报告仍未解决的问题)。
输出
claim_audit.py的标准输出(以及--json):候选主张及其类型、位置,还有正文与表格之间的数值交叉核对结果——这是一份待处理清单,而非结论。paper-workspace/review/claims-matrix.md:供作者填写并据此采取行动的可审查主张矩阵,以及一行INDEX.md条目。- 聊天摘要:各状态的数量、风险最高的待处理主张,以及逐项主张的修正方式(补足证据/限定范围/删除)——绝不伪造依据。
硬性规则
- 此技能绝不会自行判定某项主张是真是假。 它没有判断“这是首篇实现 X 的论文”或“这确实达到了最先进水平”的依据——它会指出候选主张,并将判断交由作者和论文自身的证据。不要把模型的自我评估当作验证信号(它衡量的是合理性,而非正确性;模型越有把握时,这种评估恰恰越不可靠)。
- 绝不捏造证据。 不得编造结果、表格编号、引文、基线或显著性检验来“支撑”主张。若无法提供依据,就必须限定主张范围或删去。
- 数字是事实,不是文字表述。 如果正文中的数字与表格不一致,这是需要依据表格(或底层结果)调和的 MISMATCH,绝不能为了迎合作者更喜欢的句子而修改表格。
- “first”/“SOTA”/“significant”都是有实质分量且需要证据支撑的用词。 应将其视为需要证明的主张,而非修辞点缀。
- 此技能检查的是本篇论文内部的主张→证据关系;它不会验证
.bib是否能正确解析——那是verify-citations的职责。如果某项主张的证据来自引文,请将该参考文献交给 verify-citations 处理。 - 此技能只报告和解释;绝不编辑论文或提交任何内容。所有支撑、限定范围或删去的决定都由作者作出。
根据学科调整
默认设置面向 CS 领域的会议(IEEE/ACM/ML)。标记词表和证据要求因领域而异:理论论文的主张应追溯到定理和证明(而非表格);HCI 论文的主张应追溯到研究设计和显著性报告;综述论文的主张应关注覆盖范围和分类体系的完整性,而非“表现优于”。根据你的领域的主张用语和证明标准,编辑 references/claim-taxonomy.md 以及 claim_audit.py 中的标记列表(内有说明)。
附带资源
scripts/claim_audit.py— 从.tex文件中提取候选主张句,并交叉核对正文与表格中的数字。仅使用标准库;运行--help查看所有选项。请运行此脚本,不要手动扫描论文。- references/claim-taxonomy.md — 主张类型、每种主张所需的证据,以及针对每种主张的典型审稿人质疑。
- references/overclaiming-rules.md — 高频过度主张(“first”、“SOTA”、“significant”、过时的数字)以及针对每种情况的支撑、限定范围或删去方案。
记忆
使用共享的 .paper-memory/ 约定(完整规范:
paper-memory-convention.md)。
- 开始时: 阅读
lessons.md,避免再次标记作者本轮已经限定范围或提供依据的主张;优先指出任何recurring过度主张习惯(例如:“倾向于写绝对化的 ‘first’ 主张;应提前限定范围”)。阅读profile.yml中的risk_appetite——conservative作者希望对每项 WEAK 主张加以限定;aggressive作者则愿意在审稿中坚持可辩护的 WEAK 主张。 - 结束时: 使用
reflect-and-improve的reflect_log.py append,按共享格式追加持久性发现:- [YYYY-MM-DD] (verify-claims | <scope>) issue -> recommendation。贯穿整篇论文或多篇论文的习惯(例如,未限定范围的新颖性主张、没有检验却声称“significant”)属于recurring;单句中的问题若已修正,则属于this-paper。绝不记录捏造的依据——只记录问题模式和诚实的修正方案。 - 如果
.paper-memory/不存在,则按需创建,并询问是否将其添加到项目.gitignore。这些文件仅保存在本地,绝不上传或复制到此仓库。