mcpField
D
deep-researcher

deep-researcher

github.com/drshailesh88生产力673 次安装24 周前更新
代码仓库

关于 deep-researcher

deep-researcher 是面向五个以上来源的研究方法技能,指导研究者用文件跟踪进度、并行开展研究线程、验证并综合结果。它对医学证据的来源设有严格规定。

主要功能

  1. 01快速与深度研究模式
  2. 02基于文件的项目和进度跟踪
  3. 03并行及顺序研究线程
  4. 04交叉引用与验证流程
  5. 05严格的医学引用来源规定

适用场景

  1. 01规划涉及五个以上来源的调查
  2. 02为药物比较建立独立研究线程
  3. 03使用 PubMed 来源核查医学主张

MCP 相关

医学研究的证据和引用必须来自 PubMed MCP,可使用其文章搜索、内容获取和关联工具。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/drshailesh88/integrated_content_os --skill deep-researcher

安装后在 Claude Code 中输入/deep-researcher确认已加载。

附带文件README.md

详细介绍

深度研究者 v2.0

适用于需要 5 个以上来源的调查,提供全面的研究方法,包括基于文件的跟踪、并行执行和上下文管理。

重要:所有医学证据和引文必须来自 PubMed MCP。没有例外。


研究模式

快速研究(1-4 个来源):在当前上下文中开展,无需文件结构。

深度研究(5 个以上来源):使用下方的基于文件的跟踪方式。


研究来源(严格政策)

医学引文允许使用的来源
来源工具使用场景
PubMed MCPpubmed_search_articles、pubmed_fetch_contents、pubmed_article_connections所有医学证据、试验、机制
官方指南仅使用 web_fetch 访问 ACC/ESC/ADA/AHA URL指南建议
AstraDB RAG知识管道教科书参考资料、预加载的指南
医学引文不允许使用的来源
来源排除原因允许用途
OpenAlex质量参差不齐已移除
Perplexity未经同行评审仅用于发现趋势,绝不可引用
通用网络搜索不可靠仅用于发现主题,绝不可引用
新闻文章非一手证据仅用于背景信息
PubMed 质量筛选

优先采用(第 1 级):

  • 随机对照试验(RCT)
  • 荟萃分析和系统综述
  • ACC/ESC/ADA/AHA 指南

可接受(第 2 级):

  • 来自 Q1 期刊的大型观察性研究
  • 患者数 >1000 的队列研究
  • 来自成熟登记系统的登记数据

谨慎使用(第 3 级):

  • 病例系列(仅在没有更好证据时使用)
  • 专家共识声明
  • 叙述性综述(仅作背景资料,不作主要证据)

拒绝:

  • 病例报告(罕见病除外)
  • 致编辑的信
  • 未经同行评审的预印本
  • 动物研究(除非专门研究相关机制)

深度研究工作流

进度跟踪

创建此清单,并在每个步骤后更新:

Deep Research Progress:
- [ ] Step 1: Initialize research project
- [ ] Step 2: Define scope and plan
- [ ] Step 3: Execute research threads (parallel when possible)
- [ ] Step 4: Validate and cross-reference
- [ ] Step 5: Synthesize from files
- [ ] Step 6: Generate final report

步骤 1:初始化研究项目

对于需要 5 个以上来源的研究,创建项目结构:

mkdir -p ~/research_{topic}/sources
mkdir -p ~/research_{topic}/threads

项目结构:

~/research_{topic}/
├── plan.md              # Research questions, scope, thread assignments
├── progress.md          # Living checklist, updated throughout
├── sources/
│   └── pubmed.md        # PubMed search results and abstracts
├── threads/
│   ├── thread_1.md      # Independent research thread
│   ├── thread_2.md      # Another thread
│   └── ...
├── validation.md        # Cross-reference and credibility check
├── synthesis.md         # Cross-thread analysis
└── report.md            # Final deliverable

为什么采用基于文件的方式? 上下文窗口会被填满。将发现写入文件可以:

  • 在不受上下文压力影响的情况下继续研究
  • 根据持久化存储而非记忆进行综合
  • 生成更长、更全面的报告
  • 中断后继续研究

步骤 2:定义范围并制定研究计划

编写 plan.md,内容包括:

# Research Plan: {Topic}

## Primary Question
[The main thing we're trying to answer]

## Scope
- Include: [what's in scope]
- Exclude: [what's explicitly out]
- Depth: [overview | detailed | exhaustive]
- Deliverable: [report type and length]

## Research Threads

### Thread 1: {Subtopic A}
- Questions to answer: ...
- PubMed search strategy: [MeSH terms, filters]
- Expected study types: RCTs, meta-analyses, etc.
- Can run parallel? Yes/No

### Thread 2: {Subtopic B}
- Questions to answer: ...
- PubMed search strategy: ...
- Can run parallel? Yes/No

[Continue for 2-5 threads]

## Thread Dependencies
- Thread 3 depends on Thread 1 findings
- Threads 1, 2, 4 can run in parallel

## Synthesis Strategy
How will threads combine into final answer?

规划指南:

研究类型线程模式
简单事实查找1-2顺序
药物比较每种药物 1 个(最多 5 个)并行
复杂调查3-5 个主题线程混合
文献综述按时间段或主题划分顺序

步骤 3:执行研究线程

PubMed 搜索策略

对于每个线程,使用结构化的 PubMed 查询:

# Example search for SGLT2 CV outcomes
pubmed_search_articles(
    queryTerm="SGLT2 inhibitor cardiovascular outcomes randomized controlled trial",
    maxResults=20,
    sortBy="relevance"
)

# Then fetch full details for top results
pubmed_fetch_contents(pmids=["PMID1", "PMID2", ...])

# Find related articles for key papers
pubmed_article_connections(
    sourcePmid="key_paper_pmid",
    relationshipType="pubmed_similar_articles"
)
并行执行模式

对于相互独立的线程,并行执行 PubMed 搜索(在一轮中调用多个工具),然后将每个线程的结果写入对应文件。

示例:比较 SGLT2 抑制剂

Thread 1: Empagliflozin → pubmed_search "empagliflozin cardiovascular RCT" → threads/empagliflozin.md
Thread 2: Dapagliflozin → pubmed_search "dapagliflozin cardiovascular RCT" → threads/dapagliflozin.md
Thread 3: Canagliflozin → pubmed_search "canagliflozin cardiovascular RCT" → threads/canagliflozin.md

执行全部三项搜索,然后将发现写入相应文件。

顺序执行模式

对于有依赖关系的线程,先完整完成当前线程,再开始下一个。

线程文件格式

每个 threads/thread_N.md 应包含:

# Thread: {Subtopic}

## PubMed Searches Executed
1. Query: [exact query] → [N results] → Top PMIDs: [list]
2. Query: [exact query] → [N results] → Top PMIDs: [list]

## Key Findings

### Finding 1: [Title]
- PMID: [number]
- Citation: [Authors, Journal, Year]
- Study type: RCT / Meta-analysis / Cohort / etc.
- Population: [N patients, characteristics]
- Key result: [HR/OR with 95% CI, p-value]
- Quality: High / Medium / Low [+ brief justification]

### Finding 2: [Title]
- PMID: [number]
...

## Contradictions Found
- PMID X says [claim], PMID Y says [different claim]
- Potential explanation: [patient population, endpoints, timing, etc.]

## Gaps Identified
- No RCT data on [specific question]
- Limited evidence in [patient subgroup]

## Thread Summary
[2-3 sentence synthesis of this thread's findings with key PMIDs cited]
上下文卸载

每调用工具 5-7 次后:

  1. 将当前发现写入相应文件
  2. 更新 progress.md 中的状态
  3. 在全新上下文中继续

卸载触发条件:

  • 感觉上下文“已满”(响应变慢、开始跟不上进度)
  • 在线程之间切换
  • 进行任何综合步骤之前

步骤 4:验证并交叉引用

读取所有线程文件,然后创建 validation.md:

# Validation Report

## Facts Requiring Cross-Reference
| Claim | Thread Source | PMID | Verification Status | Confidence |
|-------|--------------|------|---------------------|------------|
| SGLT2i reduces HF hospitalization | Thread 1 | 12345678 | Confirmed by PMIDs 23456789, 34567890 | High |
| Benefit extends to HFpEF | Thread 2 | 45678901 | Conflicting: PMID 56789012 shows null | Investigate |

## Contradictions Analysis
### Contradiction 1: [Description]
- Position A: PMID [X], [study name], found [result]
- Position B: PMID [Y], [study name], found [result]
- Resolution: [Population difference / endpoint difference / timing / unresolved]

## Source Quality Assessment
| PMID | Study | Type | N | Quality | Notes |
|------|-------|------|---|---------|-------|
| 12345678 | EMPA-REG | RCT | 7,020 | High | Industry-funded but well-designed |
| 23456789 | Meta-analysis | MA | 45,000 | High | Published in Lancet |

## Validated Knowledge Base
[List of facts we're confident in, with PMIDs]

1. **SGLT2 inhibitors reduce CV death in T2DM with established CVD** (PMID: 12345678, 23456789)
2. **Benefit on HF hospitalization is consistent across the class** (PMID: 34567890, 45678901)
3. ...

步骤 5:根据文件综合

重要:从文件读取,不要依赖记忆。

# Read all thread files
cat ~/research_{topic}/threads/*.md

# Read validation
cat ~/research_{topic}/validation.md

编写 synthesis.md:

# Synthesis: {Topic}

## Cross-Thread Patterns
[What themes emerge across multiple threads?]

## Key Insights
1. [Insight that required combining multiple threads]
2. [Insight that wasn't obvious in any single thread]
3. ...

## The Answer
[Direct response to the primary research question, with PMID citations]

## Evidence Strength Assessment
- **Strong evidence (multiple RCTs):** [claims]
- **Moderate evidence (single RCT or consistent observational):** [claims]
- **Limited evidence (observational only):** [claims]
- **Expert opinion / guideline extrapolation:** [claims]

## Remaining Gaps
[What we still don't know and would need to investigate further]

步骤 6:生成最终报告

根据综合分析编写 report.md:

# {Title}

## Executive Summary
[3-5 sentences: question, key finding, main conclusion with strongest PMID]

## Research Question and Scope
[From plan.md]

## Methodology
- Database: PubMed via NCBI MCP
- Search date: [date]
- Total articles screened: [N]
- Articles included: [N]
- Study types: [breakdown]

## Findings

### {Theme 1}
[Narrative synthesis with inline PMID citations]

### {Theme 2}
...

## Analysis
[Patterns, implications, connections]

## Conclusions
1. [Primary conclusion with evidence level]
2. [Secondary conclusions]

## Clinical Implications
[If applicable: what this means for practice]

## Limitations
- [Search limitations]
- [Evidence gaps]
- [Potential biases]

## References
[Full reference list with PMIDs and DOIs]

1. Author A, Author B, et al. Title. Journal. Year;Vol:Pages. PMID: XXXXXXXX. DOI: XX.XXXX/XXXXX
2. ...

并行研究模式

模式 A:药物/实体对比

适用情况: 对比 2-5 个相似实体(药物、设备、技术)

User: "Compare CV outcomes of GLP-1 agonists"
→ Thread per drug (semaglutide, tirzepatide, liraglutide)
→ All threads parallel (same PubMed structure)
→ Comparison matrix synthesis
模式 B:正反分析

适用情况: 主题存在争议或讨论

User: "Analyze the evidence on aggressive LDL lowering"
→ Thread 1: Evidence FOR aggressive targets (PubMed: LDL <55 outcomes)
→ Thread 2: Evidence AGAINST/concerns (PubMed: LDL lowering adverse effects)
→ Thread 3: Current guidelines (fetch ACC/ESC guideline URLs)
→ Threads 1-2 parallel, Thread 3 after
模式 C:证据 + 指南

适用情况: 需要同时了解主要证据和临床指南

User: "What's the evidence on TAVR durability?"
→ Thread 1: Trial data (PubMed: TAVR long-term outcomes RCT)
→ Thread 2: Registry data (PubMed: TAVR registry durability)
→ Thread 3: Guidelines (fetch ACC/ESC valve guidelines)
→ All parallel
模式 D:历史演变

适用情况: 了解证据的演变过程

User: "How has heart failure treatment evolved?"
→ Thread 1: Pre-neurohormonal era (PubMed: heart failure treatment 1980-1990)
→ Thread 2: ACE/ARB/BB era (PubMed: heart failure ACE inhibitor landmark)
→ Thread 3: Modern era ARNI/SGLT2 (PubMed: heart failure SGLT2 ARNI)
→ Sequential (each builds context for next)

质量检查点

步骤 2 之后(规划)
  • 研究问题具体且可回答
  • 为每个研究线索定义 PubMed 检索策略
  • 标记为并行的研究线索彼此独立
  • 明确预期的研究类型
步骤 3 之后(执行)
  • 每个研究线索都有 3+ 个可信的 PubMed 来源
  • 关键论断包含具体数据(HR、CI、p 值)
  • 所有引文都附有 PMID
  • 记录研究空白和矛盾之处
  • 撰写研究线索摘要
步骤 4 之后(验证)
  • 跨研究线索交叉核对关键事实
  • 分析矛盾并探讨可能的解释
  • 评估每条主要引文的来源质量
  • 整理经过验证的知识库
步骤 5 之后(综合)
  • 找出跨研究线索的规律
  • 直接回答核心问题
  • 如实评估证据强度
  • 得出的见解超越任何单一研究线索
交付前
  • 报告结构符合用户要求的格式
  • 所有论断都附有 PMID 引文
  • 执行摘要真正精炼易读
  • 参考文献列表完整,并附 DOI

常见研究陷阱

陷阱症状解决方法
上下文溢出忘记之前的研究发现每调用工具 5-7 次就写入文件
确认偏误所有来源都出奇地一致明确检索相反证据
近期偏误仅使用 2023-2024 年的来源无论日期如何,都纳入具有里程碑意义的试验
来源同质化全是 RCT,没有指南增加指南研究线索,为临床实践提供背景
范围蔓延研究无限扩展返回 plan.md,严格遵守边界
过早综合验证前就下结论完成步骤 4 后再进行步骤 5
凭记忆综合凭记忆引用步骤 5 中明确读取文件
非 PubMed 引文引用 Perplexity/网络来源删除并替换为 PubMed 来源

示例:完整研究流程

用户:“研究秋水仙碱用于心血管预防的现有证据”

步骤 1:初始化

mkdir -p ~/research_colchicine_cv/sources
mkdir -p ~/research_colchicine_cv/threads

步骤 2:规划(写入 plan.md)

  • 核心问题:秋水仙碱用于心血管预防的证据是什么?
  • 研究线索 1:主要 RCT(COLCOT、LoDoCo2、CLEAR SYNERGY)
    • PubMed:"colchicine cardiovascular randomized controlled trial"
  • 研究线索 2:作用机制与抗炎假说
    • PubMed:"colchicine inflammation atherosclerosis mechanism"
  • 研究线索 3:指南与临床应用
    • 获取:稳定性 CAD 的 ACC/ESC 指南 URL
  • 研究线索 4:安全性与实际注意事项
    • PubMed:"colchicine adverse effects cardiovascular"
  • 研究线索 1、2、4 并行;研究线索 3 在研究线索 1 完成后开展

步骤 3:执行

# Parallel searches
pubmed_search_articles(queryTerm="colchicine cardiovascular randomized controlled trial", maxResults=15)
pubmed_search_articles(queryTerm="colchicine inflammation atherosclerosis mechanism", maxResults=10)
pubmed_search_articles(queryTerm="colchicine adverse effects cardiovascular", maxResults=10)

# Fetch top results
pubmed_fetch_contents(pmids=["31733140", "32865377", "37634428"])  # COLCOT, LoDoCo2, CLEAR

# Write to thread files

步骤 4:验证

  • 阅读所有研究线索文件
  • 交叉核对各项试验的死亡率数据
  • 注意:CLEAR SYNERGY 结果为中性,与 COLCOT/LoDoCo2 的阳性结果不同
  • 分析:患者群体差异(ACS 后 vs 慢性 CAD)
  • 编写 validation.md

步骤 5:综合

  • 从文件中读取信息
  • 规律:炎症假说得到支持,但患者选择很重要
  • 见解:ACS 后(COLCOT)的获益明确;慢性稳定 CAD(CLEAR)的获益较不确定
  • 编写 synthesis.md

步骤 6:报告

  • 提供包含证据摘要的结构化报告
  • 按患者类型给出明确建议
  • 引用所有 PMID
  • 提供完整参考文献列表

与其他技能集成

此技能为以下技能提供研究基础:

  • cardiology-editorial → 使用研究结果分析试验
  • cardiology-newsletter-writer → 写作前先进行研究
  • youtube-script-master → 为脚本证据基础开展研究
  • x-post-creator-skill → 生成推文前先进行研究

工作流:

  1. 用户提出有关某个主题的内容需求
  2. 首先运行 deep-researcher(此技能)
  3. 将经验证的研究结果交给写作技能
  4. 写作技能引用研究结果中的 PMID

不适合使用此技能的情况

  • 简单的事实性问题(直接使用 PubMed MCP)
  • 发现趋势(使用 Perplexity,但不要引用)
  • 非医疗主题(此技能针对 PubMed 进行了优化)
  • 需要快速产出内容(直接使用写作技能并进行内联研究)

在以下情况下使用此技能:

  • 综合 5 个以上来源
  • 复杂的多方面问题
  • 严谨的证据评估
  • 全面的文献覆盖

评论

支持 Markdown