| name | deep-research |
| type | simple |
| depth | extended |
| description | Orchestrates two-round parallel agent research for comprehensive topic exploration. Use when conducting research, exploring complex topics, gathering multi-faceted information, or synthesizing findings from parallel investigation streams. |
[H1][DEEP-RESEARCH]
Dictum: Iterative dispatch with inter-round critique maximizes research coverage.
Conduct comprehensive topic research via parallel agent dispatch.
Workflow:
- §ORIENT — Execute 3 Exa searches via
exa-toolsskill, map landscape, extract facets - §ROUND_1 — Dispatch 6-10 agents for breadth coverage via
parallel-dispatchskill - §CRITIQUE_1 — Filter findings, retain quality, build skeleton with gaps
- §ROUND_2 — Dispatch 6-10 agents to flesh out skeleton
- §CRITIQUE_2 — Synthesize holistically, deduplicate, produce final output
Dependencies:
exa-tools— Web search and code context queriesparallel-dispatch— Agent orchestration mechanics
Input:
Topic: Domain to researchOutputPath: Target file path (passed by invoking command, default:report.md)Constraints: Context, scaffold, style from invoking skill
[CRITICAL]:
- [ALWAYS] Main agent writes to
OutputPathonly—no other files. - [ALWAYS] Sub-agents RETURN structured text—main agent is sole file writer.
- [NEVER] Sub-agents use Write, Edit, Bash, or create any files.
[1][ORIENT]
Dictum: Initial queries map landscape before dispatch.
Main agent executes exactly 3 Exa searches via exa-tools skill; these map topic structure.
Map domain landscape; identify facets for agent assignment.
Produce facet list (6-10 independent research areas) for Round 1.
[IMPORTANT]:
- [ALWAYS] Execute 3 Exa searches via
exa-toolsskill before dispatch. - [ALWAYS] Extract facet boundaries from results.
- [NEVER] Dispatch before orient completes.
[2][ROUND_1]
Dictum: Breadth via parallel dispatch—6-10 agents exploring independent facets.
Dispatch 6-10 sub-agents via parallel-dispatch. Assign each agent unique scope from orient facets.
Agent Count: Scale by task complexity (default: 8).
Agent Prompt:
Scope: [Specific facet from orient]
Objective: Research this facet comprehensively
Output: Return structured text (CRITICAL → FINDINGS → SOURCES)
Context: [Topic background, constraints]
Constraint: DO NOT write files—return text only
[CRITICAL]:
- [ALWAYS] Dispatch ALL agents in ONE message block.
- [ALWAYS] Include "DO NOT write files" constraint in every agent prompt.
- [NEVER] Create overlapping scopes.
[3][CRITIQUE_1]
Dictum: Main agent builds skeleton—retains quality, identifies gaps.
Main agent (NOT sub-agent) processes Round 1 outputs.
| [INDEX] | [ACTION] | [CRITERIA] |
|---|---|---|
| [1] | Remove | Lacks focus, duplicates content, missing sources, pre-2024, fails quality |
| [2] | Retain | Addresses topic, includes sources, dates 2024-2025, converges across agents |
Skeleton: Build from retained → [Domain N]: [findings] + Gaps: + Depth-Targets:
[CRITICAL] Skeleton is first corpus—Round 2 fleshes it out.
[4][ROUND_2]
Dictum: Depth via parallel dispatch—same agent count, focused on skeleton gaps.
Dispatch 6-10 sub-agents (same count as Round 1) via parallel-dispatch.
Agent Assignment:
| [INDEX] | [TYPE] | [PURPOSE] | [COUNT] |
|---|---|---|---|
| [1] | Focused | Specific gaps from skeleton | 4-6 |
| [2] | Wide | Broader context for areas | 2-4 |
Agent Prompt:
Scope: [Gap or depth-target from skeleton]
Objective: [Focused: fill gap | Wide: broaden context]
Output: Return structured text (CRITICAL → FINDINGS → SOURCES)
Context: [Skeleton content—build on, don't repeat]
Prior: [Relevant Round 1 findings]
Constraint: DO NOT write files—return text only
[CRITICAL]:
- [ALWAYS] Same agent count as Round 1.
- [ALWAYS] Include skeleton context.
- [ALWAYS] Include "DO NOT write files" constraint in every agent prompt.
[5][CRITIQUE_2]
Dictum: Main agent synthesizes holistically—final corpus for downstream use.
Main agent (NOT sub-agent) compiles final research output and writes to OutputPath.
Integrate: Merge Round 2 → skeleton. Cross-reference rounds. Resolve conflicts (prioritize sourced, current, convergent).
Filter: Remove duplicates, out-of-scope content, superseded items, unresolved conflicts.
Write: Single file to OutputPath with structure:
## [1][FINDINGS]— Synthesized research by domain## [2][CONFIDENCE]— High (convergent) | Medium (single-source) | Low (gaps)## [3][SOURCES]— All sources with attribution
[6][VALIDATION]
Dictum: Gates prevent incomplete synthesis.
[VERIFY]:
- Orient: 3 Exa searches executed via
exa-toolsskill - Round 1: 6-10 agents in ONE message, all returned text (no file writes)
- Critique 1: Skeleton built, gaps identified
- Round 2: Same count, focused on skeleton, all returned text (no file writes)
- Critique 2: Final synthesis, duplicates removed
- Single file written to
OutputPathby main agent only