---
name: deep-research-recursive
description: |
Deep Research with Enforced Recursion: A methodology that forces deep exploration
by mandating recursive research on significant findings until root causes are reached.
Key difference from regular deep-research: This skill GUARANTEES recursion depth
through explicit task spawning and tracking.
Trigger phrases:
- "deep research" / "in-depth analysis"
- "recursive research" / "root cause analysis"
- "help me research"
- "why does X happen" / "what causes X"
---
# Deep Research with Enforced Recursion
Transform vague topics into research reports by **forcing recursive exploration**
until fundamental truths are reached.
## Core Philosophy
1. **Recursion is not optional** - Every research thread MUST recurse at least once
2. **Findings spawn sub-research** - Significant facts automatically trigger new research
3. **Depth until root cause** - Keep recursing until you hit irreducible facts
4. **Accumulate, don't lose** - All recursive findings merge into final report
5. **Conclusions come from mechanism comparison, not "I feel like"**
6. **First pin down facts, then derive**
7. **Authority of sources prioritized: L1 > L2 > L3 > L4**
---
## Working Directory Structure
```
./research/<topic>/
├── 00_problem_decomposition.md
├── 01_source_references.md
├── 02_fact_cards.md
├── 03_comparison_framework.md
├── 04_derivation_process.md
├── 05_verification_records.md
├── recursion_tree.md # Track recursion depth
├── recursive/ # Sub-research artifacts
│ ├── level1_<subtopic>/
│ │ ├── findings.md
│ │ └── sources.md
│ ├── level2_<subtopic>/
│ └── level3_<subtopic>/
└── FINAL_research_report.md
```
---
## The Recursion Guarantee
### Minimum Depth Rule
You MUST achieve at least **3 levels of recursion depth**:
```
Level 0: Original question
└── Level 1: First significant finding
└── Level 2: Deeper cause of Level 1
└── Level 3: Root cause or fundamental principle
```
**BLOCKING**: Cannot complete report until minimum depth achieved.
### Recursion Tracking File
Create `recursion_tree.md` at the start:
```markdown
# Research Recursion Tree
## Level 0: [Original Topic]
- Status: pending/in_progress/completed
- Key Finding: [main finding]
- Spawns: Level 1 research on [topic]
## Level 1: [Subtopic]
- Parent: Level 0
- Status: pending/in_progress/completed
- Key Finding: [finding]
- Spawns: Level 2 research on [topic] (if deeper exists)
## Depth Achievement
- Current Depth: 0
- Minimum Required: 3
- Can Stop: NO
```
### When Recursion is MANDATORY
| Finding Type | Must Recurse On | Example |
|--------------|-----------------|---------|
| Cause identified | WHY this cause exists | "Revenue dropped" → recurse on why |
| Trend observed | WHAT drives it | "Usage increasing" → recurse on driver |
| Difference found | WHY the difference | "X is faster than Y" → recurse on reason |
| Correlation found | THE causation mechanism | "A correlates with B" → recurse on how |
| Problem diagnosed | ROOT cause | "System slow" → recurse on bottleneck |
### When Recursion Can Stop
1. **Fundamental principle**: Physics laws, math theorems, definitions
2. **Irreducible fact**: "Company founded in 1995" (no deeper cause)
3. **Maximum depth**: Hit depth limit (default: 5 levels)
4. **Out of scope**: Leaves original question's domain
**Document stopping reason** in recursion tree.
---
## Workflow
### Step 0: Problem Type Judgment
Determine research question type:
| Problem Type | Core Task | Focus Dimensions |
|--------------|-----------|------------------|
| **Concept Comparison** | Establish comparison framework | Mechanism differences, applicable boundaries |
| **Decision Support** | Weigh trade-offs | Cost, risk, benefit |
| **Trend Analysis** | Sort evolution context | History, driving factors, predictions |
| **Problem Diagnosis** | Root cause analysis | Symptoms, causes, evidence chain |
| **Knowledge Organization** | Systematically organize | Definition, classification, relationships |
### Step 0.5: Time Sensitivity Judgment (BLOCKING)
Before research, determine time sensitivity:
| Sensitivity | Typical Domains | Source Time Window |
|-------------|-----------------|-------------------|
| **🔴 Very High** | AI/LLM, Blockchain | 3-6 months |
| **🟠 High** | Cloud Services, Frontend | 6-12 months |
| **🟡 Medium** | Languages, Databases | 1-2 years |
| **🟢 Low** | Algorithms, Patterns | No limit |
**For 🔴 Very High sensitivity**:
- Use `time_range: "month"` in searches
- Must consult official docs first
- All technical descriptions must include version numbers
- Sources older than 6 months: historical reference only
**Save**: Append to `00_problem_decomposition.md`
### Step 1: Problem Decomposition
Break topic into 2-4 researchable sub-problems:
- **Sub-problem A**: "What is X, how does it work?"
- **Sub-problem B**: "What's the relationship/difference between X and Y?"
- **Sub-problem C**: "In what scenarios is X applicable/not applicable?"
- **Sub-problem D**: "What are X's development trends/best practices?"
**Define research boundaries**:
| Dimension | Must Define | Example |
|-----------|-------------|---------|
| Population | Which group? | College vs. high school students |
| Region | Where? | US vs. China vs. global |
| Time Period | When? | After 2020 vs. historical |
| Level | What level? | Undergrad vs. graduate |
**Save**: Write `00_problem_decomposition.md`
### Step 2: Source Layering
Grade sources by authority:
| Tier | Source Type | Purpose | Credibility |
|------|-------------|---------|-------------|
| **L1** | Official docs, papers, RFCs | Definitions, mechanisms | ✅ High |
| **L2** | Official blogs, talks | Design intent | ✅ High |
| **L3** | Media, tutorials | Cases, intuition | ⚠️ Medium |
| **L4** | Community, forums | Blind spots, verification | ❓ Low |
**Principles**:
- Conclusions traceable to L1/L2
- L3/L4 for assistance only
- Record all sources
**Time filtering** (based on Step 0.5):
| Sensitivity | Filter Rule |
|-------------|-------------|
| 🔴 Very High | Only < 6 months as factual basis |
| 🟠 High | Prioritize < 1 year |
| 🟡 Medium | Normal use < 2 years |
| 🟢 Low | No limit |
**Save**: Append each source to `01_source_references.md`:
```markdown
## Source #[N]
- **Title**: [title]
- **Link**: [URL]
- **Tier**: L1/L2/L3/L4
- **Release Date**: [YYYY-MM-DD]
- **Timeliness**: ✅/⚠️/❌
- **Target Object**: [who/what this applies to]
- **Summary**: [1-2 sentences]
```
### Step 3: Fact Extraction
Transform sources into **verifiable fact cards**:
```markdown
## Fact #[N]
- **Statement**: [specific fact]
- **Source**: [Source #N] [Link]
- **Confidence**: ✅/⚠️/❓
- **Related Dimension**: [comparison dimension]
```
**Confidence levels**:
- ✅ High: Explicitly in official docs
- ⚠️ Medium: Official blog/talk, not formal doc
- ❓ Low: Non-official source or speculation
**Save**: Append to `02_fact_cards.md`
### Step 4: Comparison Framework
Select analysis dimensions based on problem type:
**General Dimensions**:
1. Goal/solving what problem
2. Mechanism/process
3. Input/output/boundaries
4. Advantages/disadvantages
5. Applicable scenarios
6. Cost/benefit/risk
7. Historical evolution
8. Security/permissions
**Concept Comparison Dimensions**:
1. Definition and essence
2. Trigger method
3. Execution subject
4. Input/output constraints
5. Determinism
6. Resource management
7. Composition methods
8. Security boundaries
**Decision Support Dimensions**:
1. Solution overview
2. Implementation cost
3. Maintenance cost
4. Risk assessment
5. Benefit expectation
6. Applicable scenarios
7. Team requirements
8. Migration difficulty
**Save**: Write `03_comparison_framework.md`
### Step 5: Reference Alignment
Ensure unified definitions:
- [ ] Is reference object's definition stable?
- [ ] Need verification or use common sense?
- [ ] Reader's understanding matches mine?
- [ ] Ambiguities need clarifying?
### Step 6: Derivation Chain
Write "fact → comparison → conclusion" explicitly:
```markdown
## Dimension: [Name]
### Fact Confirmation
According to [Fact #X], X's mechanism is...
### Comparison Reference
Y's mechanism is... (Source: [Fact #Y])
### Conclusion
Therefore, the difference is...
### Confidence
✅/⚠️/❓ + Reason
```
**Save**: Write `04_derivation_process.md`
### Step 7: Use Case Verification
Verify conclusions with typical scenario:
**Verification Questions**:
- According to my conclusion, how should this scenario be handled?
- Is it actually that way?
- Are there counterexamples?
**Backtracking Checklist**:
- [ ] Conclusions align with fact cards?
- [ ] Important dimensions missed?
- [ ] Over-inference?
- [ ] Actionable/verifiable?
**Save**: Write `05_verification_records.md`
---
### Step 8: Recursion Execution (BLOCKING)
**This step is MANDATORY.**
#### 8.1 Identify Recursion Candidates
From findings, identify 2-3 most significant facts that:
1. Are central to main conclusion
2. Have underlying cause worth researching
3. Are not yet "fundamental"
For each:
```markdown
## Recursion Candidate: [Finding]
- Significance: [why it matters]
- Has Deeper Cause?: YES/NO
- Deeper Hypothesis: [what might explain it]
- Recursion Required?: YES/NO
```
#### 8.2 Check Depth Requirement
```
Current Depth: [N]
Minimum Required: 3
Maximum Allowed: 5
Status: [ ] Need more recursion / [ ] Met
```
If not met, **MUST spawn recursive research**.
#### 8.3 Spawn Recursive Research
Use **Task tool**:
```
Task(
description="Recursive research: [subtopic]",
subagent_type="general",
prompt="""
RECURSIVE RESEARCH TASK
Parent Topic: [parent]
Current Depth: [N]
Your Topic: [subtopic]
Execute deep-research-recursive skill for this subtopic.
Save artifacts to: ./research/[parent]/recursive/level[N]_[subtopic]/
REQUIRED OUTPUT (concise):
1. Key findings (2-3 bullets)
2. Has deeper cause worth researching? YES/NO
3. If YES, what deeper topic?
4. Key sources (with links)
Do NOT output full report. Output only structured summary.
"""
)
```
#### 8.4 Record in Recursion Tree
After each spawn completes:
```markdown
## Level [N]: [Subtopic]
- Parent: Level [N-1]
- Status: completed
- Key Findings:
1. [finding]
2. [finding]
- Has Deeper Cause: YES/NO
- Deeper Topic: [if YES]
- Sources: [list]
```
#### 8.5 Recursion Loop
```
WHILE depth < minimum OR significant_findings_have_deeper_causes:
spawn_recursive_research()
depth += 1
update_recursion_tree()
IF depth >= maximum:
log("Max depth reached")
BREAK
```
---
### Step 9: Synthesis and Report
#### 9.1 Create Depth Trail
```markdown
# Recursive Findings Synthesis
## Depth Trail
[Original Question]
→ [Level 1]: [finding]
→ [Level 2]: [finding]
→ [Level 3]: [finding]
→ [Root/Fundamental]: [irreducible fact]
## Chain of Causation
1. [Level 0 conclusion] because...
2. [Level 1 reason] because...
3. [Level 2 reason] because...
4. [Level 3 / fundamental truth]
```
#### 9.2 Generate Final Report
```markdown
# [Topic] Research Report
## Abstract
[One-line summary with root cause]
## Recursive Depth
This research reached depth [N]:
- Level 1: [finding]
- Level 2: [finding]
- Level 3: [finding]
## Root Cause / Fundamental
[The irreducible truth at deepest level]
## Main Findings
[Integrated findings from all levels]
## 1. Concept Alignment
### 1.1 What is X
### 1.2 What is Y (reference)
## 2. Working Mechanism
[Core differences]
## 3. Connections
[Common problems solved]
## 4. Differences
[Dimension-by-dimension comparison]
## 5. Use Cases
## 6. Summary and Suggestions
## References
[All sources with links]
```
---
## Quality Checklist
Before completion:
- [ ] `recursion_tree.md` exists and complete
- [ ] Minimum depth 3 achieved
- [ ] Each level has documented findings
- [ ] Stopping reason documented for leaf nodes
- [ ] Chain of causation explicitly stated
- [ ] All core conclusions have L1/L2 support
- [ ] At least one use case verification
- [ ] References complete, links accessible
---
## Anti-Patterns
| Wrong | Correct |
|-------|---------|
| "Revenue dropped" → Stop | → Recurse on WHY |
| "X better than Y" → Stop | → Recurse on WHAT MAKES IT BETTER |
| "Trend increasing" → Stop | → Recurse on DRIVER |
| "It's complicated" → Stop | → Decompose and recurse |
| "Multiple factors" → List | → Recurse on each significant factor |
---
## Example: Recursion in Action
**Request**: "Why is Phil Spencer leaving Xbox?"
```
Level 0: Original
→ Finding: Xbox hardware revenue declining rapidly
→ Recurse: WHY is revenue declining?
Level 1: Revenue Decline
→ Finding: Game Pass cannibalizing game sales; hardware loss-making
→ Recurse: WHY does Game Pass cannibalize?
Level 2: Game Pass Cannibalization
→ Finding: Subscription model reduces individual purchases
→ Recurse: WHY did Microsoft choose this model?
Level 3: Microsoft Strategy
→ Finding: Shift to recurring revenue and ecosystem lock-in
→ Recurse: WHY this strategic shift?
Level 4: Root Cause (STOP)
→ Finding: Nadella's company-wide strategy: cloud services, subscriptions,
platforms over one-time sales. Xbox is now a cloud gaming service.
→ This is a fundamental business strategy decision.
```
**Depth: 4 levels**
**Root Cause: Strategic pivot to cloud/subscription under Nadella**
---
## Quick Reference
```
┌─────────────────────────────────────────────────────────────┐
│ Deep Research with Enforced Recursion │
├─────────────────────────────────────────────────────────────┤
│ MINIMUM DEPTH: 3 | MAXIMUM: 5 │
│ │
│ 0. Problem type → select framework │
│ 0.5. Time sensitivity → filter sources │
│ 1. Decompose → 2-4 sub-problems │
│ 2. Source layering → L1 > L2 > L3 > L4 │
│ 3. Fact extraction → with confidence levels │
│ 4. Comparison framework → select dimensions │
│ 5. Reference alignment → unified definitions │
│ 6. Derivation chain → fact → comparison → conclusion │
│ 7. Use case verification → sanity check │
│ 8. RECURSION → spawn sub-research (MANDATORY) │
│ 9. Synthesis → merge all recursive findings │
├─────────────────────────────────────────────────────────────┤
│ STOP WHEN: fundamental principle / irreducible fact / │
│ max depth / out of scope │
└─────────────────────────────────────────────────────────────┘
```