关于 recursive-research
一种用于跨领域深度研究的 Agent 技能,通过循环研究、来源分级和进度检查点逐步整理主题。它先收集研究主题、模式和来源偏好,并根据覆盖度与饱和度决定继续或结束。
主要功能
- 01开始前收集主题与研究偏好
- 02按可信度分级并筛选来源
- 03围绕多个主题线索迭代研究
- 04将周期进展保存到文件
- 05依据覆盖度和饱和度判断结束
- 06支持网页与本地资料研究
适用场景
- 01为技术文档或论文准备研究材料
- 02快速了解新领域以辅助决策
- 03梳理知识空白与不同观点
- 04从本地文件和网页汇总主题信息
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ anjos2/ recursive-research --skill recursive-research安装后在 Claude Code 中输入/recursive-research确认已加载。
详细介绍
技能:递归深度研究(v2.0)
自我调节式研究,围绕一个研究种子(根主题)不断迭代,直至达到 博士级水平。适用于任何领域:形式科学、自然科学、社会科学、人文学科、艺术、技术、商业。
适用场景
- 想要深入研究某个主题,达到专家水平
- 需要了解一个新领域,以便做出明智的决策
- 正在准备技术文档、论文、提案或研究
- 想要识别最新进展和知识空白
原则
- 先提问,再研究 — 技能会在开始前询问用户的研究种子、模式和来源
- 可靠来源,分级透明 — 自动拒绝不可靠的来源
- 在所有非简单的自主决策中使用 WDM + Munger 逆向思维
- 自我调节循环 — 不设固定迭代次数;以可衡量的标准决定何时结束
- 防御性检查点 — 每轮都保存到磁盘;应对上下文压缩 / 会话关闭
- 预防性暂停 — 检测是否接近上下文限制,并在强制关闭前建议暂停
完整流程
阶段 0 — 初始提问(技能提问)
调用 /recursive-research 时,技能会按顺序询问用户:
- 研究种子:“你想研究什么主题?”(自由文本)
- 模式:
web/local/mixto - 如果包含本地内容:“我应该研究哪些本地路径?”(以逗号分隔的路径列表)
- 优先来源(可选):偏好的作者、域名、出版物
- 排除来源(可选)
- 循环硬上限(默认值:20;可配置)
技能会提供摘要,并等待确认后再开始。
阶段 1 — 准备工作区
- 为研究种子生成
slug(kebab-case,最多 40 个字符) - 检查 / 在当前工作目录中创建
memoria/investigaciones/<slug>/- 如果
memoria/不存在,则创建它,并说明:“项目中不存在memoria/文件夹。我会创建它,因为该技能需要在每轮将发现汇总并保存到磁盘 — 这样才能在新的会话中恢复研究。”
- 如果
- 创建初始文件:
estado.md— 元数据、进度、指标hilos.md— 种子线索及子线索树fuentes-tier-1.md、fuentes-tier-2.md、fuentes-tier-3.md、fuentes-rechazadas.mdhallazgos.md— 汇总
阶段 2 — 确定种子线索
生成 3-5 条种子线索(从不同角度切入主题)。
将 WDM 应用于线索筛选:
| 标准 | 权重 | 评估内容 |
|---|---|---|
| 概念覆盖度 | 4 | 是否涵盖主题的不同维度? |
| 视角多样性 | 3 | 是否包含不同的声音 / 学派? |
| 来源可获取性 | 3 | 是否存在 Tier 1/2 来源来支持这条线索? |
| 与用户的相关性 | 4 | 是否符合促使用户开展研究的目标? |
评估 5-8 条候选线索,选出排名靠前的 3-5 条。
对选定线索进行芒格式逆向思考:
- 我忽略了哪些重要线索?
- 缺少哪种视角会让我的研究变得片面?
- 哪个学派 / 异议者的声音没有出现?
如果逆向思考发现缺少关键线索,就将其补上并重新运行 WDM。
各领域示例(不只是代码):
| 领域 | 种子主题 | 常见线索 |
|---|---|---|
| 科学 | 癌症免疫疗法 | 分子机制 / 临床试验 / 历史与演变 / 争议与局限 / 商业现状 |
| 艺术 | 20 世纪音乐中的极简主义 | 关键作曲家 / 技法 / 历史文化背景 / 批评与接受情况 / 代表作品 |
| 商业 | B2B SaaS 变现模式 | 定价策略 / 财务指标 / 有据可查的案例 / 法律框架 / B2B 购买心理 |
| 人文 | 现代斯多葛哲学的实践 | 原始资料(爱比克泰德、塞涅卡、奥勒留) / 当代解读 / 实践应用 / 哲学批评 / 心理学实证证据 |
| 技术 | 微服务中的六边形架构 | 理论基础 / 按编程语言分类的实现 / 真实案例 / 权衡与批评 / 工具 |
阶段 3 — 检测可用工具
在第一个周期开始前,检测可用的 MCP,并按优先级排序:
优先级(从速度 / 效果高到低):
- 针对 AI 优化的抓取 MCP:Firecrawl(
firecrawl_scrape、firecrawl_crawl、firecrawl_search、firecrawl_extract)——文本结构化,速度快 - 官方文档 MCP:Context7(
query-docs)——来源为库 / 框架时使用 - 原生工具:
WebSearch、WebFetch——通用备用方案 - 真实浏览 MCP(Chrome DevTools):优先级较低——仅当内容明确要求执行 JS 时使用(无 SSR 的 SPA、需要通过身份验证才能访问的内容)
原因:AI 抓取工具比真实浏览器快 10-50 倍,并能提供已结构化的文本。
阶段 4 — 建议的种子来源
该技能会向用户展示一份按领域预加载的种子来源列表,供用户确认、添加或拒绝:
综合科学 / 论文:
- arXiv (https://arxiv.org) — 涵盖物理、数学、CS、生物学、经济学的预印本
- Semantic Scholar (https://www.semanticscholar.org) — 引文网络
- Google Scholar (https://scholar.google.com)
- Connected Papers (https://www.connectedpapers.com) — 引文可视化图谱
- OpenReview (https://openreview.net) — ML 开放评审
医学 / 生物学:
- PubMed (https://pubmed.ncbi.nlm.nih.gov)
- Cochrane Library (https://www.cochranelibrary.com) — 荟萃分析
- WHO (https://www.who.int)
- ClinicalTrials.gov
人文 / 社会科学:
- JSTOR (https://www.jstor.org)
- SSRN (https://www.ssrn.com)
- Project MUSE (https://muse.jhu.edu)
代码 / 技术:
- GitHub(搜索、主题、专家的 starred 列表)
- Context7,用于官方文档(如果 MCP 可用)
- RFCs (https://www.rfc-editor.org)
- W3C specs (https://www.w3.org/TR/)
数据 / 统计:
- 世界银行 (https://data.worldbank.org)
- OECD Data (https://data.oecd.org)
- Our World in Data (https://ourworldindata.org)
- Pew Research (https://www.pewresearch.org)
- Eurostat、INE 及各国对应机构
艺术 / 文化 / 人文:
- Europeana (https://www.europeana.eu)
- Google Arts & Culture (https://artsandculture.google.com)
- Internet Archive (https://archive.org)
- Project Gutenberg (https://www.gutenberg.org)
综合来源:
- Wikipedia — 作为起点。始终跳转到参考资料部分,查找 Tier 1/2 来源
- Wikidata — 结构化数据
本地来源(如果用户提供了路径):
- 列出文件夹结构
- 优先处理
.md、.pdf、.txt、.doc/.docx、.html、.epub - 使用 Agent 的读取工具(Read、Grep、Glob)
阶段 5 — 研究循环(自我调节 LOOP)
每个循环执行以下子步骤。
5.1. 选择覆盖率最低的线索
计算每条线索当前的覆盖率(已记录发现 / 预期发现代理值)。选择百分比最低的一条。
5.2. 对本轮将使用的来源应用 WDM + Munger
针对每个候选来源进行 WDM 评估:
| 标准 | 权重 | 评分尺度 |
|---|---|---|
| 权威性(Tier) | 5 | Tier 1 = 5 · Tier 2 = 3 · Tier 3 = 2 · 拒绝 = 0 |
| 与当前线索的相关性 | 5 | 根据语义匹配度评分,1-5 |
| 可访问性 | 3 | 5 = 全文开放 · 3 = 摘要 + 付费墙 · 1 = 被屏蔽 |
| 与领域相符的新近程度 | 2 | 代码:新近 > 陈旧 · 经典哲学:陈旧 = 相关 |
| 无利益冲突 | 3 | 5 = 独立 · 1 = 由利益相关方资助 |
选择排名前 3-5 的来源。
对选定来源进行 Munger 逆向思考:
- 我没有使用哪些本应使用的来源?(持不同意见者、批判性学派、被压制的声音)
- 所有选定来源有哪些共同偏见?(只来自英语国家、只来自某个时代、只来自某个学派)
- 是否有记录在案的相反观点?→ 如果存在,至少添加 1 个相互矛盾的来源
5.3. 执行搜索 / 阅读
- 按阶段 3 中识别出的优先顺序使用 MCP
- 提取:具体事实、数值数据、注明出处的直接引文、新人物 / 作品 / 概念的名称
- 记录在本轮工作笔记中
5.4. 为每个查询来源应用分级
Tier 1 — 最高可信度:
- 在索引期刊中发表的同行评审论文(Scopus、Web of Science、PubMed、ACM、IEEE)
- 学术出版社出版的书籍(MIT Press、Oxford UP、Cambridge UP、Springer)
- 标准官方文档(W3C、IETF/RFC、ISO、IEEE、WHO、FDA、BIS)
- 可核实的一手档案(国家博物馆、大学图书馆、国家档案馆)
- 官方统计机构的原始数据
Tier 2 — 高可信度:
- 活跃且知名项目的官方代码库
- 可引用作者(研究人员、具有可核实资历的专业人士)的博客/出版物
- 知名会议上的演讲(附视频和论文)
- 带有 Tier 1/2 参考资料的 Wikipedia(将其视为参考资料聚合平台)
- 发布了方法论的智库/咨询公司报告(Pew、Gartner、McKinsey Institute)
Tier 3 — 有用,但需谨慎:
- 引用 Tier 1/2 来源的博客
- 高赞且附有引用资料的 Stack Overflow/论坛内容
- 对身份明确的专家进行的录制采访
- 作者信息清晰的行业出版物
自动拒绝:
- 无法确定作者身份
- 没有实证数据的营销内容
- 垃圾信息/SEO 聚合平台
- 未引用来源的教程
- 缺乏可核实背景的社交媒体内容
- 缺乏有据可查的人类监督的 AI 生成内容
每个查询来源都要记录在相应的 tier 文件中,包含:标题、URL、作者、日期、分配的 tier、理由。
5.5. 汇总到检查点
在周期结束时保存到:memoria/investigaciones/<slug>/ciclo-N.md,包含:
- 已研究的主题线索
- 查询过的来源(含 tier)
- 新发现
- 与先前主题线索的联系
- 后续周期要探索的开放问题
5.6. 更新 estado.md
- 增加周期计数
- 重新计算各主题线索的覆盖率
- 记录饱和度指标:
saturacion = hallazgos_nuevos_ciclo / hallazgos_totales_acumulados - 更新工具调用次数和已消耗输出 token 的估算值
5.7. 评估结束条件 —“博士级”适应度函数
必须满足以下 5 项条件:
- 所有种子主题线索的覆盖率 ≥80%
- 每条主题线索至少有 3 个 Tier 1 来源(若该领域 Tier 1 来源较少,则可组合 Tier 1 和 Tier 2 来源)
- 连续 3 个周期的饱和度 ≤5%
- 将 Munger 逆向思维应用于知识状态:记录尚不清楚的内容、来源之间的矛盾,以及发现的偏见
- 跨主题线索综合分析:记录至少 3 条不同主题线索之间的明确联系
决策:
- 全部满足 → 阶段 6(自然结束)
- 达到周期上限 → 阶段 6(强制结束并发出提醒)
- 否则 → 继续执行步骤 5.8
5.8. 预防性暂停(上下文检查)
阈值:
tool_calls_en_sesion ≥ 150- 或
tokens_output_aprox ≥ 80000
超过任一阈值时:
- 写入完整检查点(5.5 + 5.6)
- 发出消息:
[PAUSA PREVENTIVA RECOMENDADA]
Estado actual:
- Ciclos completados: N
- Tool calls en sesión: X (cerca del límite)
- Tokens de output aprox: Y
Razón: me aproximo al límite de contexto. Si continúo, podría perder coherencia
al compactarse la sesión.
La investigación está guardada en:
memoria/investigaciones/<slug>/
Para reanudar en nueva sesión:
/recursive-research --resume <slug>
¿Pausar aquí, o continuar 1-2 ciclos más? (continuar / pausar)
- 等待回复。如果回复为
continuar,则继续;如果为pausar,则跳转到阶段 6(记录文档的部分结束)。
未超过阈值 → 返回 5.1,进入下一个周期。
阶段 6 — 收尾
无论是自然收尾(满足 5 项标准)、强制收尾(达到循环上限),还是部分收尾(手动暂停):
-
sintesis.md— 执行摘要:- 使用简单语言撰写的摘要(3-5 段)
- 按主题线索整理的发现,并附交叉引用
- 检测到的争议和矛盾
- 知识空白(未调查的内容/仍未解决的问题)
- 已跟进主题线索的地图(树状图)
-
acciones.md— 按影响排序的可执行行动清单 -
对知识状态进行最终的 Munger 反向思考(记录在
gaps.md中):- 我仍然有哪些未知?
- 哪些来源彼此矛盾,且尚未解决?
- 我的来源集合存在哪些偏差?
- 一个不了解情况的批判性审查者会提出什么我无法回答的问题?
-
询问用户:
[INVESTIGACIÓN COMPLETADA — estado: natural / forzado / pausado]
Semilla: <tema>
Ciclos ejecutados: N / <tope>
Fuentes consultadas: X total (T1: A · T2: B · T3: C · Rechazadas: D)
Estado PhD: alcanzado / NO alcanzado (razones: ...)
Gaps identificados:
1. ...
2. ...
3. ...
Opciones:
1. Cerrar aquí
2. Profundizar un gap específico (indica cuál)
3. Añadir nuevo hilo y continuar
4. Cambiar de modo (web → mixto, etc.)
¿Qué prefieres?
研究可以无限进行 — 只有用户决定后才会结束。
--resume 模式
调用:/recursive-research --resume <slug>
- 查找
memoria/investigaciones/<slug>/ - 如果不存在 → 明确报错,并建议使用常规的
/recursive-research - 如果存在:
- 读取
estado.md→ 重建指标 - 读取最后一个
ciclo-N.md→ 获取近期上下文 - 读取
hilos.md→ 获取当前树状结构 - 提示:“从第 N 个循环继续。下一步:[主题线索 X]。是否继续?”
- 读取
- 从阶段 5 继续循环
--list 模式
调用:/recursive-research --list
列出当前项目在 memoria/investigaciones/ 中保存的所有调查:
- Slug · 种子 · 已完成循环数 · 状态(开放/已关闭)· 上次修改时间
应主动拒绝的反模式
- 浅层搜索 — 只用同义词重复查询,却不深入研究实际结果
- 忽略 Munger — 只因来源令人安心就选择它们;反向思考是必做项
- 缺少检查点 — 连续进行 5 个循环,却不写入磁盘
- Tier 3 缺少引用 — 接受未明确引用 Tier 1/2 来源的博客
- PhD 自我认定 — 未衡量全部 5 项标准就宣称达到 PhD 水平;只要缺少一项,就不得结束
- 忽略空白 — 未记录未知内容就结束;知识空白是交付内容的一部分
- 居高临下 — 为了“让摘要更整洁”而隐瞒争议或矛盾;知识诚实本身就是成果
- 盲目信任内部知识 — Agent 的知识可能已经过时;务必对照来源核实
最终生成的文件结构
memoria/investigaciones/<slug>/
├── estado.md ← progreso, métricas, metadata
├── hilos.md ← árbol de hilos y sub-hilos con estado
├── fuentes-tier-1.md ← fuentes más confiables consultadas
├── fuentes-tier-2.md ← fuentes de alta confianza
├── fuentes-tier-3.md ← fuentes con cautela
├── fuentes-rechazadas.md ← fuentes evaluadas y descartadas (con razón)
├── hallazgos.md ← consolidación de descubrimientos
├── ciclo-01.md ← checkpoint del ciclo 1
├── ciclo-02.md
├── ciclo-N.md
├── sintesis.md ← síntesis ejecutiva (Fase 6)
├── acciones.md ← checklist de acciones aplicables
└── gaps.md ← lo que NO se sabe, controversias, sesgos
调用示例
Usuario: /recursive-research
Skill: ¿Cuál es el tema que quieres investigar?
Usuario: Mecanismos de la memoria episódica en humanos
Skill: ¿Modo? (web / local / mixto)
Usuario: mixto
Skill: ¿Rutas locales?
Usuario: C:/Dropbox/papers-neurociencia
Skill: ¿Fuentes / autores priorizados? (opcional)
Usuario: Endel Tulving, Eleanor Maguire
Skill: ¿Fuentes excluidas? (opcional)
Usuario: -
Skill: ¿Tope de ciclos? (default 20)
Usuario: 25
Skill: Confirmado.
Semilla: "memoria episódica en humanos"
Modo: mixto · Local: [C:/Dropbox/papers-neurociencia]
Priorizar: [Tulving, Maguire] · Tope: 25 ciclos
Aplicando WDM + Munger para identificar hilos semilla...
[muestra tabla]
Hilos seleccionados:
1. Bases neuroanatómicas (hipocampo, PFC)
2. Fenomenología y taxonomía (Tulving et al.)
3. Trastornos y disociaciones (amnesia, Alzheimer)
4. Modelos computacionales
5. Neurociencia cognitiva contemporánea
La carpeta `memoria/` no existe. La creo — es necesaria para
consolidar cada ciclo en disco.
Ruta: memoria/investigaciones/memoria-episodica-humanos/
Arrancando ciclo 1 (hilo con menor cobertura: 1)...
作者与许可证
- 作者: Joseph Huayhualla (@Anjos2)
- 许可证: MIT — 参见仓库中的
LICENSE文件 - 仓库: https://github.com/Anjos2/recursive-research
欢迎贡献。如果你发现尚未涵盖的反模式、更好的启发式方法,或更可靠的 PhD 标准,请提交 PR。