Skip to content
deep-research logo

Deep Research

deep-research

Use when user requests research requiring multiple sources, comprehensive analysis, or synthesis across topics - technical research, domain knowledge gathering, market analysis, or learning about complex subjects

SKILL.md

Full skill instructions

Deep Research

Autonomous multi-agent research system. Dispatches parallel sub-agents, stores findings to files, synthesizes into briefs or reports.

Core principle: Planning → Parallel research agents → File-based findings → Synthesis = high quality research with minimal context usage.

When to Use

digraph when_to_use {
    "User requests research?" [shape=diamond];
    "Quick factual lookup?" [shape=diamond];
    "Use single search tool directly" [shape=box];
    "Multiple sources or synthesis needed?" [shape=diamond];
    "deep-research" [shape=box];

    "User requests research?" -> "Quick factual lookup?" [label="yes"];
    "Quick factual lookup?" -> "Use single search tool directly" [label="yes"];
    "Quick factual lookup?" -> "Multiple sources or synthesis needed?" [label="no"];
    "Multiple sources or synthesis needed?" -> "deep-research" [label="yes"];
}

Use for: Technical research, domain knowledge, market analysis, architectural patterns, comparing approaches, learning complex topics

Don't use for: Single fact lookups, specific URL fetches, questions answerable in one search

The Process

digraph process {
    rankdir=TB;

    "Create research directory in scratchpad" -> "Dispatch Query Analyzer agent";
    "Dispatch Query Analyzer agent" -> "Analyzer writes research-plan.md";
    "Analyzer writes research-plan.md" -> "Read plan, dispatch N Research agents IN PARALLEL";
    "Read plan, dispatch N Research agents IN PARALLEL" -> "Each agent writes findings-{thread}.md";
    "Each agent writes findings-{thread}.md" -> "Wait for all agents";
    "Wait for all agents" -> "Dispatch Synthesizer agent";
    "Dispatch Synthesizer agent" -> "Synthesizer reads all findings, writes final-output.md";
    "Synthesizer reads all findings, writes final-output.md" -> "Read final output, present summary to user";
}

Quick Reference

Phase 1: Planning (Query Analyzer Agent)

Uses ./​query-analyzer-prompt.md. Writes research-plan.md containing:

  • Query type: technical | domain | hybrid
  • Complexity: simple (2-3 agents) | moderate (3-4) | complex (5-6)
  • Research threads with source recommendations
  • Output format recommendation: brief | report

Phase 2: Parallel Research

Uses ./​research-agent-prompt.md. Each agent:

  1. Invokes exa-search skill for source strategy
  2. Executes searches (Exa-primary, see Source Selection below)
  3. Writes findings-{thread-name}.md

Source Selection:

Query SignalPrimary Source
Code, APIs, librariesmcp__exa__get_code_context_exa
Concepts, analysis, opinionsmcp__exa__web_search_exa
Video explanations neededyt-transcribe skill
Very recent news (< 1 week)WebSearch fallback

Phase 3: Synthesis

Uses ./​synthesizer-prompt.md. Reads all findings files, writes final-output.md:

  • Actionable Brief (~300 words): Simple query + clear consensus
  • Structured Report (~1500 words): Complex query or conflicting findings

Agent Dispatch Methods

For complex queries (4+ threads): Use Task tool with subagent_type: "general-purpose" for true sub-agent isolation. Dispatch all research agents in a single message (parallel Task calls).

For simpler queries (2-3 threads): Parallel tool calls within same context is acceptable - make all searches simultaneously, then write findings files.

Either way: research threads must execute in parallel, not sequentially.

File Structure

{scratchpad}/​deep-research-{timestamp}/
├── research-plan.md
├── findings-*.md
└── final-output.md

Common Mistakes

MistakeFix
Doing research yourself instead of dispatching agentsAlways use the three-phase architecture
Keeping findings in context instead of filesEach agent MUST write to files
Sequential research agentsDispatch all research agents in PARALLEL
Skipping planning phaseAlways run Query Analyzer first
Using WebSearch as defaultExa is primary; WebSearch only for very recent news

Red Flags - STOP

  • "I'll just do a quick search myself" → Use the full process
  • "I don't need to write files for this" → Files are mandatory
  • "I'll research these topics one at a time" → Parallel dispatch
  • "This is simple, I'll skip planning" → Always plan first

More Other skills

Delegate independent tasks to specialized agents working concurrently with isolated context.

295.4K 206.3K
View

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

179.7K 100.1K
View

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

179.7K 89.5K
View

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

179.7K 76.1K
View

Fundamental design principles for writing maintainable, testable Python code.

40.2K 21.9K
View

Modern responsive layouts using container queries, fluid typography, CSS Grid, and mobile-first strategies.

40.2K 20K
View

Generate Playwright tests from scenarios using interactive browser exploration and validation.

39.7K 18.2K
View

Modern React state management with Redux Toolkit, Zustand, Jotai, and React Query for every state category.

40.2K 14.7K
View

GDPR-compliant data handling with consent management, data subject rights, and privacy controls.

40.2K 14.3K
View

Python error handling patterns including input validation, exception hierarchies, and partial failure handling. Use when implementing validation logic, designing exception strategies, handling batch processing failures, or building robust APIs.

40.2K 13.5K
View

Detailed multi-file refactor planning with safety checks and rollback guidance.

39.7K 13K
View