为什么选这个 Skill
脚本驱动、全程有状态、可恢复。每一步都会写入 research_state.json,session 崩溃不会丢语料。
7 阶段工作流
问题拆解 → 检索 → 排序 → 精读 → 引用追踪 → 综合 → 自我批判 → 成稿。每阶段都有门控,通过前校验状态文件。
4 源文献聚合
OpenAlex(2.4 亿+ 条,主干)、arXiv(预印本)、Crossref(DOI 元数据)、PubMed(生物医学)。全部免 API key。
透明排序
公开公式: α·相关 + β·引用 + γ·时效 + δ·期刊。每篇论文的评分分量都写入 state,报告可以引用自己的方法论。
强制自我批判
Phase 6 运行 14 项对抗性检查:悬空论断、期刊/作者偏倚、时效坍塌、未受质疑的高引论文。结果写入报告附录。
可恢复状态
每次查询、每篇论文、每个决定都保存在 research_state.json。跨天暂停、崩溃、恢复都不会丢失语料。
自动升级
Phase 0 Step 0 在每次调用时自动 fast-forward 到 origin 最新版。用户不必知道要升级——永远在运行最新版本。
工作流程
每个阶段都会读写 research_state.json。Phase 6 自我批判如果发现覆盖缺口,会回到 Phase 1 补检索;其余阶段是线性的。
flowchart LR
Q([研究问题]) --> P0[0 · 拆解]
P0 --> P1[1 · 检索]
P1 --> P2[2 · 排序]
P2 --> P3[3 · 精读]
P3 --> P4[4 · 追引]
P4 --> P5[5 · 综合]
P5 --> P6[6 · 自我批判]
P6 -- 存在缺口 --> P1
P6 --> P7[7 · 成稿]
P7 --> OUT([带引用报告 + .bib])
STATE[(research_state.json)]
P0 & P1 & P2 & P3 & P4 & P5 & P6 & P7 <-.-> STATE
classDef phase fill:#1c2a4a,stroke:#58a6ff,color:#e6edf3;
classDef state fill:#1a3a1a,stroke:#3fb950,color:#e6edf3;
class P0,P1,P2,P3,P4,P5,P6,P7 phase;
class STATE state;
检索停止依据是饱和度信号,不是固定轮数:一轮结束的条件是新增论文占比 <20% 且新增论文中没有引用数 >100 的。自我批判的发现会写回 state,并进入最终报告的附录。
Agent 原生 CLI
每个脚本只在 stdout 打印唯一一个 JSON envelope,并返回稳定的退出码。为 LLM 编排器设计,不只是为人类。遵循 agent-native CLI 的 7 项原则。
成功
失败
每个脚本都支持 --schema 预解析——agent 不用读文档就能发现参数。高开销调用(引用追踪)接受 --idempotency-key——重试直接命中缓存,不会重复消耗 API 配额。
对比原生 Agent
用这个 skill 和直接 prompt 一个 LLM 的差别。
| 能力 | 原生 Agent | 本 Skill |
|---|---|---|
| 多源检索 | 单源为主 | ✓ 4 源聚合 |
| 饱和度停止信号 | 一次性 | ✓ 每源分别校验、最小轮数门控 |
| 跨源去重 | ✗ | ✓ DOI 优先 + 标题相似度 |
| 透明排序公式 | 不透明 | ✓ 公式 + 分量写入 state |
| 正向/反向引用追踪 | ✗ | ✓ OpenAlex 图 + 幂等 |
| 可恢复状态 | 每轮无状态 | ✓ research_state.json |
| 报告原型选择 | 通用大纲 | ✓ 5 种原型 |
| 强制自我批判 | ✗ | ✓ 14 项检查(Phase 6) |
| 引用锚点强制 | 论断悬空 | ✓ 每条论断都需 [^id] |
| BibTeX / CSL-JSON / RIS 导出 | ✗ | ✓ 从 state 生成 |
| 确认偏误兜底 | ✗ | ✓ 主动搜索反驳文献 |
| 调用时自动升级 | N/A | ✓ Phase 0 Step 0 |
| MCP 优雅降级 | 硬绑定单一工具 | ✓ MCP 失败时脚本照常运行 |
5 种报告原型
给合适的问题选合适的结构——从用户意图推导,不强行套通用大纲。
文献综述(Literature Review)
"这个领域当前进展如何?" 主题分块、综合、缺口分析。意图是"综述全景"时的默认选项。
系统综述(Systematic Review)
面向窄问题的多研究 PRISMA-lite。数据抽取表 + 汇总发现 + 显式入排标准。
范围综述(Scoping Review)
"哪些被研究过、怎么研究的?" 宽度优先。覆盖地图 + 方法清单 + 研究空白。
对比分析(Comparative)
A vs B 正面对比。对比轴 + 逐轴判定 + 证据支持的推荐结论。
课题背景(Grant Background)
课题申请的叙事导入:问题重要性 → 已有工作 → 存在缺口 → 我们的方法为什么值得做。
意图驱动
Phase 0 根据问题自动匹配合适的原型;拿不准时会反问。原型决定了整个下游流程的形状。
安装
选一个平台。克隆之后跑 pip install -r requirements.txt 装 httpx 和 pypdf,无需 API key。
# 全局安装(所有项目可用) git clone https://github.com/Agents365-ai/scholar-deep-research.git \ ~/.claude/skills/scholar-deep-research cd ~/.claude/skills/scholar-deep-research pip install -r requirements.txt # 项目级安装 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ .claude/skills/scholar-deep-research
# 全局安装 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ ~/.config/opencode/skills/scholar-deep-research cd ~/.config/opencode/skills/scholar-deep-research pip install -r requirements.txt # 项目级安装 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ .opencode/skills/scholar-deep-research
# 通过 ClawHub 注册表 clawhub install scholar-deep-research # 手动安装 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ ~/.openclaw/skills/scholar-deep-research
# 安装到 research 分类 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ ~/.hermes/skills/research/scholar-deep-research # 或添加到 ~/.hermes/config.yaml: # skills: # external_dirs: # - ~/myskills/scholar-deep-research
# 用户级安装 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ ~/.agents/skills/scholar-deep-research # 项目级安装 git clone https://github.com/Agents365-ai/scholar-deep-research.git \ .agents/skills/scholar-deep-research
# 通过 SkillsMP CLI skills install scholar-deep-research
最省事的安装方式: 直接对 agent 说——"帮我装 https://github.com/Agents365-ai/scholar-deep-research 并跑 pip install -r requirements.txt"。Claude Code、OpenCode、OpenClaw、Hermes、Codex、pi-mono 都会自动把它放到正确位置。