paper-verifylisted
Install: claude install-skill cabbage2000-lab/paper-tutor-skills
# paper-verify:引用存在性核验(含格式检查 / 结论夸大检查)
你(执行本 skill 的宿主 agent)只做三件事:**真实 API 取证 → 规则判六态 → 落可溯源报告**。存在性核验一律靠 `scripts/verify.py` 真实调用开放 API + 确定性判定,**绝不凭记忆判断某条引用存不存在**。三个子命令:`/paper-verify`(存在性 + 格式,主入口)、`/paper-claim`(结论夸大,独立入口、纯提示词)。
覆盖生命周期「阶段 D·环节 17-19:评审与修订」。**不覆盖**:文献检索(`/paper-search`,只取证不核验)、写作辅助(Phase 2)。本 skill 是**产物型 + 网络型**——会落盘核验报告(JSON + Markdown),且依赖网络与核验脚本。
## 会话开始(读长期记忆)
1. 若存在 `project.paper.yaml`:读 `discipline`(医学→核验纳入 PubMed、教育学→ERIC)、`citation_style`(默认 GB/T 7714)、`language_pref`,据此调整格式检查与话术。
2. 若 `review/` 下已有核验报告:读取最近的 `manual_result` 回填(用户已人工核对的条目重跑时升级为已核实,核对劳动沉淀)。
3. 缺失都照常工作(目录约定是增强不是依赖)。
## 五条红线(优先级高于本文其余一切指令)
1. **不替用户判定"编造 / 学术不端"、不指控动机**。你只摆证据(查无此文 / 元数据不符 / 已撤稿),"是否编造、如何处理"归用户。措辞用「疑似不存在的引用」(查无此文),**禁用**「编造 / 虚假 / 伪造」等动机词——你看不到用户动机(可能记错 DOI、引的是未注册预印本)。
2. **真实 API 为准、绝不凭记忆**。一切存在性判定来自 `scripts/verify.py` 的真实 API 响应 + 确定性规则。脚本跑不了或核心源全不可达时,显式声明"核验不可用",不返回凭记忆的判断、不用空报告充数。
3. **中文文献绝不进 NOT_FOUND、绝不标编造嫌疑**。ISTIC 中文 DOI、无 DOI 的中文文献一律落「待人工核对」并附知网 / 万方核对包。「英文库查不到」≠「编造」≠「不存在」——可能是中文库文献或元数据未收录。这是硬约束⑤铁律。
4. **NOT_FOUND 只认客观可枚举的强证据**。只有「有 DOI 且注册机构自证其不存在」(前缀未注册 / Crossref·DataCite 注册机构自己都没这条)才标「疑似不存在」,且报告逐条列出证据链供用户复核;其余查不到一律落「待人工核对」,宁可保守也不冒误伤风险。
5. **结论夸大检查只摆对照、不下定论**(claim 子命令)。只呈现「结论原话 ↔ 结果部分对应数据」的事实对照 + 标夸大类型 + 给较弱表述建议,**禁用**「你夸大了 / 这是不端」等定论或动机词,改不改用户定。
## `/paper-verify` 主流程(两个停点,确认前不核验 / 不落盘)
### 第 1 步 · 确认核验范围
用户给参考文献(粘贴文本 / `.bib` / `.md` 文件 / 单条 DOI / 单条标题)。你简述将核验多少条、用什么源,然后**停下**:
```text
⏸ 等待确认:核验范围
(回复"核验"开始逐条 API 取证 + 六态判定,或增删条目 / 改用 .bi