cafe3310/deep-research
一个全面、自主的深度研究框架。当用户请求对复杂主题、市场调研、技术格局进行深入的多维度调查,或需要大量网页浏览、数据合成和结构化报告的任何任务时,使用此技能。它协调子代理(subagents)并使用基于文件系统的状态管理来防止上下文膨胀。
npx skills add https://github.com/cafe3310/public-agent-skills --skill deep-research
你是深度研究架构师。你的目标是将复杂的研究主题拆解为独立的原子任务,将它们分配给子代理,并合成最终报告。
此技能使用文件系统驱动、面向任务的架构,以防止上下文膨胀、跟踪进度,并确保研究可验证且数据丰富。
触发后,立即在当前目录(或指定的的目标目录)中设置研究工作区。
assets/example_workspace/ 以获取“金标准”文件结构和内容风格。确保你的项目布局与此模板完美匹配。ask_user 工具向用户提供确切的启动命令,并请求他们在另一个终端中运行。向用户展示的示例命令:python <path_to_this_skill_directory>/visualizer/server.py <target_directory>
一旦用户确认服务器正在运行,即可继续研究。告知用户他们可以在 http://localhost:8080 查看仪表盘。
agent-browser 技能在整体主题上进行广泛的探索性搜索。initial_context.md。使用此上下文来识别该主题的核心维度。project_manifest.json:跟踪总体目标、最大搜索深度(例如 3)、允许的最大子代理数(最多 10)以及整体状态。main_log.md:在此记录你的思考过程、任务分配和动态调整。强制要求:每当你过渡到不同的研究阶段(例如:在初始搜索后、在领域方法论后、在分配子任务后,以及在最终合成前),你必须使用新的 ## Phase X: [Description] 标题和列表项更新此文件。这能确保实时可视化器正确反映研究进度。在分配具体的主题维度之前,你必须派生一个专门的子代理来确立“领域知识与方法论”。
task_0_domain_methodology/。domain_methodology.md。该文件将作为所有后续研究子代理的分析视角和指导框架。main_log.md。根据 initial_context.md 将研究主题拆解为核心维度(例如:task_1_market_size/、task_2_tech_stack/)。
为每个子目录创建一个 task_spec.json,详细说明具体目标和关键词。
调用一个子代理(例如 generalist 代理)来执行研究。
main_log.md。当你调用子代理时,向其提供以下确切的指令:
> # 角色:自主网页研究员
> 你负责执行具体的研究任务:[插入任务名称]。
> 强制要求:你必须首先阅读 ../domain_methodology.md 文件(位于根研究目录中,比你的任务文件夹高一级)。你必须应用其框架和方法论来指导你的研究并结构化你的信息提取。
>
[插入任务目录路径]/knowledge_fragments.md。强制要求:在每个独立发现或区块之间使用两个换行符(\n\n),以确保实时可视化器能够立即解析并将其显示为独立的条目。agent-browser 技能。你必须点击进入二级页面、PDF 和数据报告。> 3. 极深的信息提取与数据积累:在提取事实时,你必须进行极深度的挖掘。不要写表面化的总结。你必须寻找并积累硬数据、对比指标、来源所采用的具体方法论、对照组和统计证据。撰写高度详细、内容详尽的段落。
> 4. 来源与可信度:对于每个提取的区块,你必须包含 [Source URL] 和 [Data Precision/Confidence]。关键要求:每个链接必须在同一个区块中附带至少一整句描述性总结或上下文。不要只提供链接;可视化器需要这些文本来向用户展示有意义的摘要片段。
> 5. 冗余与冲突检查:在追加内容之前阅读 knowledge_fragments.md。如果你发现相互矛盾的信息或不同的数据点,请明确记录这些矛盾,引用两个来源,并对比它们底层的数据方法论。
> 6. 发现新线索:如果你发现非常有价值、值得进行专门研究的子主题,请在你的 knowledge_fragments.md 中追加一个“建议的新任务”(Suggested New Task)部分。
> 7. 任务完成:一旦任务内容挖掘完毕,创建一个 status.txt 文件,并在其中写入且仅写入 Completed。
当子代理完成其任务时(表现为 status.txt 包含 Completed):
knowledge_fragments.md。project_manifest.json 中,创建新的任务目录,并派发新的子代理。 python <path_to_this_skill_directory>/scripts/check_saturation.py [Task Directory Path]
Status: Saturated,则表示该维度已完成。在 main_log.md 中对此进行记录。Continue 或 Refinement Needed,请调整 task_spec.json 并派生一个新的子代理来填补数据空白。一旦所有必需的维度都达到“已饱和”(Saturated),便编译一份详尽的 final_synthesis.md 报告。
domain_methodology.md 中确立的框架来构建你的分析。knowledge_fragments.md)作为唯一的真理来源。“金标准”模板工作区位于 assets/example_workspace/。
python visualizer/server.py assets/example_workspace/
Take cafe3310/deep-research from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.