kthorn/research-superpower/subagent-driven-review

Claude Code and agent skill by kthorn/research-superpower

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Use parallel subagents for large-scale paper screening and deep dive analysis

Install

npx vskill@latest install kthorn/research-superpower/subagent-driven-review

SKILL.md

Subagent-Driven Literature Review

Overview

Core principle: Fresh subagent per batch + consolidation between batches = fast parallel screening with quality control

For large literature reviews (50+ papers), dispatching parallel or sequential subagents dramatically speeds up screening while maintaining quality through consolidation checkpoints.

When to Use

Use subagent-driven approach when:

  • Large searches: 50+ papers to screen
  • Parallelizable work: Papers are independent, can be screened separately
  • Deep dive tasks: Multiple papers need detailed extraction (data tables, methods, datasets)
  • Citation exploration: Following citation networks recursively
  • Context management: Main context getting full, need fresh context
  • Time pressure: Need results faster than sequential screening

Do NOT use when:

  • Small searches (<20 papers) - overhead not worth it
  • Need real-time user visibility into every paper
  • Papers require cross-comparison during screening
  • Simple, fast screening tasks

Use Cases

1. Parallel Paper Screening (Most Common)

Scenario: You have 100 papers from PubMed search to screen for relevance

Pattern:

Main agent:
1. Splits 100 papers into 5 batches of 20
2. Dispatches 5 subagents IN PARALLEL (single message, multiple Task calls)
3. Each subagent:
- Fetches abstracts for its batch
- Scores using rubric
- Returns JSON with results
4. Main agent consolidates results into papers-reviewed.json
Time savings: 5x faster than sequential!

Prompt template for subagent:

I need you to screen papers 1-20 from this PMID list for relevance to [QUERY].
PMIDs to screen: [PMID list]
Use the evaluating-paper-relevance skill to:
1. Fetch abstract for each PMID
2. Score 0-10 based on:
- Keywords: [list]
- Data types needed: [measurements, protocols, datasets, etc.]
3. Return JSON:
{
"screened_papers": [
{"pmid": "12345", "score": 8, "status": "relevant", "reason": "..."},
...
],
"stats": {"highly_relevant": 3, "relevant": 5, "not_relevant": 12}
}
Do NOT update papers-reviewed.json - return results only.
**Rate limiting (CRITICAL - PubMed limits are SHARED across all parallel subagents):**
- If you are the ONLY subagent running: Use 500ms delays (2 req/sec, safe)
- If running with OTHER parallel subagents: Use longer delays to share capacity
- You are 1 of 2 parallel: Use 1 second delays
- You are 1 of 3 parallel: Use 1.5 second delays
- You are 1 of 5 parallel: Use 2.5 second delays
- If you get HTTP 429 errors: Wait 5 seconds, then use 5-second delays for remaining requests
2. Deep Dive on Priority Papers

Scenario: Initial screening identified 15 highly relevant papers, need detailed data extraction from each

Pattern:

Main agent:
1. Creates TodoWrite with 15 tasks (one per paper)
2. For each paper, dispatches subagent to:
- Fetch full text (PMC, Unpaywall)
- Extract relevant data (tables, figures, methods)
- Identify key findings
- Return structured findings
3. Main agent consolidates into SUMMARY.md
4. Reviews and adds to papers-reviewed.json
Can dispatch in parallel (5 at a time) or sequentially

Prompt template for subagent:

Deep dive analysis for paper PMID [12345] / DOI [10.xxxx/yyyy]
Use evaluating-paper-relevance skill to:
1. Check for curated data sources (if applicable to domain)
2. Fetch full text (try PMC, then Unpaywall if paywalled)
3. Extract relevant data based on research domain:
- Data tables and measurements
- Methods and protocols
- Key results and findings
- Figures with relevant information
4. Return structured JSON:
{
"pmid": "12345",
"doi": "10.xxxx/yyyy",
"full_text_source": "PMC" or "Unpaywall" or "paywalled",
"data_sources": ["Table 1", "Figure 3", "Supplementary Data"],
"key_measurements": ["specific values or ranges found"],
"methods_summary": "Brief description of methods",
"key_findings": ["Finding 1", "Finding 2", ...],
"data_availability": "GEO: GSE12345" or "Code: github.com/..." or null
}
Do NOT update papers-reviewed.json - return findings only.
3. Citation Network Exploration

Scenario: Found one highly relevant paper, need to explore forward and backward citations

Pattern:

Main agent:
1. Dispatches two subagents IN PARALLEL:
- Subagent A: Fetch and screen forward citations
- Subagent B: Fetch and screen backward citations
2. Each returns list of promising PMIDs with scores
3. Main agent:
- Consolidates results
- Removes duplicates
- Adds to screening queue
- Updates papers-reviewed.json

Prompt template for subagent:

Find and screen forward citations for PMID [12345].
Use traversing-citations skill to:
1. Fetch forward citations from PubMed or OpenCitations
2. Screen abstracts for relevance to [QUERY]
3. Score each citation (0-10)
4. Return JSON with promising papers (score ≥7):
{
"seed_pmid": "12345",
"direction": "forward",
"citations_found": 45,
"relevant_citations": [
{"pmid": "67890", "score": 8, "title": "...", "reason": "..."},
...
]
}
Do NOT update papers-reviewed.json - return results only.
4. Domain-Specific Extraction

Examples by domain:

Genomics:

Subagent extracts:
- GEO/SRA/ENA accessions
- Sample sizes and conditions
- Sequencing methods (RNA-seq, WGS, etc.)
- Analysis pipelines
- Differential expression results

Computational methods:

Subagent extracts:
- Algorithm descriptions
- Code repositories (GitHub, GitLab, etc.)
- Benchmark datasets used
- Performance metrics
- Implementation details

Clinical research:

Subagent extracts:
- Study design (RCT, cohort, etc.)
- Sample size and demographics
- Intervention details
- Primary outcomes
- Statistical methods

Ecology/Environmental:

Subagent extracts:
- Study sites and coordinates
- Sampling methods
- Species/taxa studied
- Environmental measurements
- Data repositories

Workflow: Parallel Screening

Step 1: Plan and Split

Main agent tasks:

  1. Load PMID list from search results
  2. Decide on batch size (typically 15-25 papers per subagent)
  3. Create TodoWrite with batches
  4. Prepare subagent prompts

Example TodoWrite:

- Screen papers batch 1 (PMIDs 1-20)
- Screen papers batch 2 (PMIDs 21-40)
- Screen papers batch 3 (PMIDs 41-60)
- Screen papers batch 4 (PMIDs 61-80)
- Screen papers batch 5 (PMIDs 81-100)
- Consolidate all subagent results
- Generate SUMMARY.md from consolidated data
Step 2: Dispatch Subagents

CRITICAL: Dispatch all subagents in PARALLEL using single message with multiple Task calls

Example:

I'm dispatching 5 subagents in parallel to screen 100 papers.
[Uses Task tool 5 times in single message]

Why parallel: 5x speed improvement vs sequential!

Step 3: Collect Results

Main agent:

  1. Wait for all subagents to complete
  2. Collect JSON results from each
  3. Validate format and completeness

Check for:

  • All PMIDs were screened
  • Scoring rubric was applied consistently
  • No papers missing
Step 4: Consolidate

Main agent:

  1. Merge all subagent results
  2. Remove duplicates (if any overlap between batches)
  3. Sort by relevance score
  4. Add ALL papers to papers-reviewed.json:
json
{
"10.1234/example.2023": {
"pmid": "12345",
"status": "highly_relevant",
"score": 9,
"source": "pubmed_search_batch1",
"screened_by": "subagent",
"timestamp": "2025-10-11T14:30:00Z",
"found_data": ["measurements", "methods", "datasets"]
}
}

Mark source as "subagent" or "pubmed_search_batch1" etc.

Step 5: Review Quality

Main agent checks:

  • Scoring appears consistent across batches
  • No batch has dramatically different hit rate (could indicate problem)
  • Highly relevant papers make sense
  • Any papers needing manual re-review?

Red flags:

  • One batch found 10 relevant papers, others found 0-1 (inconsistent scoring?)
  • Papers marked "highly relevant" don't match keywords
  • Missing expected papers

If issues found: Re-screen problematic batch manually or with fresh subagent

Step 6: Generate Summary

Main agent:

  1. Create SUMMARY.md with all highly relevant and relevant papers
  2. Sort by score
  3. Add statistics
  4. Note which papers need deep dive
Step 7: Optional Deep Dive

For highly relevant papers (score ≥8):

Option A: Dispatch subagents sequentially

For each highly relevant paper:
- Dispatch one subagent per paper
- Subagent does deep dive extraction
- Main agent consolidates findings immediately
- Updates SUMMARY.md progressively

Option B: Dispatch subagents in parallel batches

Batch 1: Papers 1-5 (dispatch 5 subagents in parallel)
Wait for completion, consolidate
Batch 2: Papers 6-10 (dispatch 5 subagents in parallel)
Wait for completion, consolidate
...

Workflow: Citation Exploration

Step 1: Identify Seed Papers

Find 2-3 highly relevant papers from initial screening

Step 2: Dispatch Citation Subagents

For each seed paper, dispatch TWO subagents in parallel:

  1. Forward citations (who cited this paper?)
  2. Backward citations (what did this paper cite?)

Prompt each subagent with:

  • Seed PMID
  • Relevance criteria
  • Return only papers scoring ≥7
Step 3: Consolidate Citations

Main agent:

  1. Collects all citation results
  2. Removes duplicates
  3. Removes papers already in papers-reviewed.json
  4. Creates new screening queue
Step 4: Screen New Papers

Option A: Dispatch new batch screening subagents for citation results Option B: Main agent screens smaller batch manually

Step 5: Iterate

If citation exploration found many new relevant papers:

  • Consider exploring citations from those papers too
  • Be careful of exponential growth!
  • Set stopping criteria (e.g., max 3 levels deep, max 200 total papers)

Integration with Other Skills

Works with:
  • evaluating-paper-relevance: Subagents use this for individual paper screening
  • traversing-citations: Subagents use this for citation exploration
  • finding-open-access-papers: Subagents check Unpaywall for paywalled papers
  • checking-chembl: Subagents can check curated databases (when applicable)
Combines with:
  • writing-plans: Create screening plan before dispatching subagents
  • TodoWrite: Track batches and consolidation progress

Consolidation Patterns

Pattern 1: JSON Aggregation

Subagents return structured JSON, main agent merges:

python
# Pseudo-code for consolidation
all_results = []
for subagent_output in subagent_results:
results = parse_json(subagent_output)
all_results.extend(results['screened_papers'])
# Sort by score
all_results.sort(key=lambda x: x['score'], reverse=True)
# Update papers-reviewed.json
for paper in all_results:
papers_reviewed[paper['doi']] = {
'pmid': paper['pmid'],
'status': paper['status'],
'score': paper['score'],
'source': f"subagent_batch_{paper['batch_id']}",
'timestamp': now()
}
Pattern 2: Progressive Consolidation

Consolidate after each subagent completes (sequential dispatch):

Dispatch subagent 1 → wait → consolidate → dispatch subagent 2 → wait → consolidate → ...

Advantage: See progress incrementally Disadvantage: Slower than full parallel

Pattern 3: Batch Consolidation

Dispatch N subagents in parallel, consolidate batch, repeat:

Dispatch 5 subagents → wait for all 5 → consolidate → dispatch next 5 → ...

Advantage: Balance between speed and manageable consolidation Disadvantage: More complex than full parallel or sequential

Common Mistakes

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/kthorn/research-superpower/subagent-driven-review/badge)](https://verified-skill.com/skills/kthorn/research-superpower/subagent-driven-review)

Something wrong with this skill or its page? Tell us.