agentleFS
loursCreatifloursCreatif/ours-stack/deep-research/SKILL.md

deep-research

Skill1 starsChanged 4 months agoMITView on GitHub

Standalone classic deep research — wide discovery (150–250+ sources screened in literature-review mode), PRISMA-style funnel, ranked selection, in-depth reading on the top 15–25, structured synthesis report. Works on any topic without requiring /bear-hours. Use when the user wants deep research, "recherche approfondie", "literature review", "research this topic", "find the best sources and summarize", or runs /deep-research. Asks depth level up front (source counts per mode). Modes: quick (30–50), standard (80–120), literature-review (150–250+), extreme (~2 000 via 20 sub-agents — double confirmation + token/time warning). Outputs research/<slug>/report.md + sources-index.md.

196 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use community-led-growth, ph-community-outreach and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • nicepkgSkill

    community-led-growth

    Expert in community-led growth (CLG) - leveraging user communities to drive acquisition, retention, and expansion. Covers building developer communities, user groups, ambassador programs, and turning customers into advocates. Knows the difference between community as a feature vs community as a growth engine, and how to measure community ROI. Use when "community-led, CLG, ambassador program, champion program, user community, developer community, word of mouth, user group, " mentioned.

    Also in 5 projects that use this

  • nicepkgSkill

    ph-community-outreach

    Engage Reddit, Indie Hackers, Hacker News and other communities for Product Hunt launches. Use this skill to identify relevant communities, craft appropriate posts, and drive cross-platform engagement without appearing spammy.

    Also in 5 projects that use this

  • W-MoorerSkill

    academic-paper-reviewer

    Multi-perspective academic paper review with dynamic reviewer personas. Simulates 5 independent reviewers (EIC + 3 peer reviewers + Devil's Advocate) with field-specific expertise. Supports full review, re-review (verification), quick assessment, methodology focus, Socratic guided, and calibration modes. Triggers on: review paper, peer review, manuscript review, referee report, review my paper, critique paper, simulate review, editorial review, calibrate reviewer, reviewer calibration, measure reviewer accuracy.

    Also in 11 projects that use this

  • W-MoorerSkill

    academic-pipeline

    Orchestrator for the full academic research pipeline: research -> write -> integrity check -> review -> revise -> re-review -> re-revise -> final integrity check -> finalize. Coordinates deep-research, academic-paper, and academic-paper-reviewer into a seamless 10-stage workflow with mandatory integrity verification, two-stage peer review, and reproducible quality gates. Triggers on: academic pipeline, research to paper, full paper workflow, paper pipeline, end-to-end paper, research-to-publication, complete paper workflow.

    Also in 10 projects that use this

  • xfstudioSkill

    micro-saas-launcher

    Expert in launching small, focused SaaS products fast - the indie hacker approach to building profitable software. Covers idea validation, MVP development, pricing, launch strategies, and growing to sustainable revenue. Ship in weeks, not months. Use when: micro saas, indie hacker, small saas, side project, saas mvp.

    Also in 5 projects that use this

  • stophobiaSkill

    surprise-me

    Create a delightful, unexpected "wow" experience for the user by dynamically discovering and creatively combining other enabled skills. Triggers when the user says "surprise me" or any request expressing a desire for an unexpected creative showcase. Also triggers when the user is bored, wants inspiration, or asks for "something interesting".

    Also in 4 projects that use this

  • +4 more from nicepkg
  • +1 more from W-Moorer

The file

Show its rules and text

We split this skill into the rules it gives an agent

22 rules. 0 are common, 6 are distinctive, and 16 are very specific to this project.

  • 0

    Common

    Most of the 177 edited versions we read keep these.

  • 6

    Distinctive

    This author's own choices. Worth a look.

  • 16

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Do not auto-route here from other skills.

    line 41
  2. Very specific:

    Use AskUserQuestion (or your environment's interactive question widget) for intake gates.

    line 56
  3. Distinctive:

    STOP: after each call; wait for the answer before continuing

    line 61
  4. Very specific:

    If studies/<slug>/brief.md exists → studies/<slug>/research.md + studies/<slug>/sources-index.md

    line 87
  5. Very specific:

    Always: call AskUserQuestion before Step 1 — unless smart-skipped (below).

    line 107
  6. Very specific:

    If user picks extreme → STOP — go to Step 0d (do not confirm or start yet).

    line 122
  7. Distinctive:

    If Non → re-run Step 0c.

    line 139
  8. Very specific:

    If Oui → confirm in one line, e.g.: Mode extreme confirmé — 20 sous-agents, cible ~2 000 sources découvertes, 40–60 lectures en profondeur.

    line 141
  9. Distinctive:

    This step dominates: Do not proceed to deep reading until the discovery target is met or max rounds exhausted.

    line 183
  10. Very specific:

    Run 8–15 rounds of parallel WebSearch (4–5 queries per round).

    line 189
  11. Very specific:

    Only after Step 0d confirmed: Follow references/extreme-orchestration.md.

    line 226
  12. Very specific:

    Create research/<slug>/discovery/ and discovery/plan.md (20 angle clusters)

    line 228
  13. Very specific:

    If merged unique < 1 000 → tell user extreme target missed.

    line 232
  14. Distinctive:

    Do not run extreme discovery single-threaded — the 20-agent fan-out is the point.

    line 234
  15. Very specific:

    Use snippet; WebFetch abstract only when title/snippet ambiguous

    line 240
  16. Very specific:

    Update sources-index.md in place as you go.

    line 248
  17. Very specific:

    Prefer arXiv / author PDF when paywalled.

    line 260
  18. Very specific:

    If WebFetch fails (403, paywall without alternative, unreadable PDF, timeout):

    line 264
  19. Very specific:

    Write report.md per references/report-template.md — in the user's language (translate template headings as needed).

    line 286
  20. Very specific:

    If discovered < 150 in literature-review mode → ## Search coverage section: shortfall, untried angles, offer extend pass.

    line 294
  21. Very specific:

    If extreme and discovered < 1 500 → ## Search coverage + ## Extreme run metadata per extreme-orchestration.md.

    line 296
  22. Distinctive:

    If discovered < target: say how many more rounds would close the gap.

    line 308

“Common” is measured: kept by at least 6 in 10 of the 177 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Deep Research

Classic deep research = search wide (100s) → screen → read deep (10s–20s) → synthesize.

Standalone — no pipeline prerequisite. Follow references/screening-funnel.md for target numbers.

Tool names are indicative — use the equivalents available in your environment (e.g. interactive question widgets, sub-agent/task launchers, web search/fetch tools).

When to use (vs other skills)

SkillRole
/deep-researchThis skill — 30–2 000 candidates (mode-dependent), top sources read, full report
/bear-hoursFrame a learning wedge (no reading)
/source-scout5–7 reading picks in brief.md (no reading)

Do not auto-route here from other skills.

Hard rules

  • Search wide before reading — log every candidate; never jump to 5 sources and call it done.
  • Screening is mandatory — document exclusions with reason codes (see funnel reference).
  • Read before summarizing — deep-read only eligible top picks; do not invent paper content.
  • Synthesis cites only deep-read sources — cited count ≤ read count for the mode.
  • Two artifacts — sources-index.md (full audit trail) + report.md (synthesis).
  • Honest counts — if discovery < target for the mode, say so; never fake 200 screened.
  • Own words — synthesize; no long copyrighted quotes (AGENTS.md).
  • Report language — write report.md in the user's language; translate section headings if needed. Source titles stay in their original language.

Interactive questions

Use AskUserQuestion (or your environment's interactive question widget) for intake gates. If no widget exists, ask clearly in chat and wait for the answer.

Hard rules:

  • Never list depth options as plain chat bullets — always use an interactive question (widget or explicit chat ask)
  • One question per call — sharpen question and depth are separate calls
  • STOP after each call; wait for the answer before continuing
  • Do not start discovery (Step 2) until depth is confirmed
  • extreme requires two confirmations — picker + dedicated cost gate (Step 0c)

Title format: Deep Research — {label}

Step 0: Intake

InputRequired?
Research questionYes
Depth modeYes — via interactive question (unless smart-skipped)
Study linkOptional — studies/<slug>/brief.md

0a — Research question

Take the question from the user's message. If missing or too broad for one sentence → AskUserQuestion:

Title: Deep Research — Question

Ask: "Quelle question précise veux-tu que je réponde ? (une phrase, cadrée)"

Options: infer 2–3 sharpened variants from context, plus other — "Autre — je précise dans mon prochain message".

Derive <slug> from the question (lowercase, hyphens). Determine output path:

  • If studies/<slug>/brief.md exists → studies/<slug>/research.md + studies/<slug>/sources-index.md
  • Else → research/<slug>/report.md + research/<slug>/sources-index.md

0b — Existing folder (before any write)

Before creating or overwriting any file, check whether the target folder already has sources-index.md and/or report.md (or research.md).

SituationAction
No existing index/reportProceed to Step 0c (depth)
Index exists with pending rowsPropose resume — continue from first pending (screen/read) instead of restarting discovery
Index and/or report exist (recent)Ask via interactive question: overwrite, resume, or extend — do not write until answered
User chose resumeLoad existing index; skip discovery if all rows screened; jump to first incomplete stage
User chose extendKeep existing index; append new discovery round (see escape hatches)
User chose overwriteProceed; replace files on first write

Fresh slug with no prior files → skip this gate.

0c — Depth level (mandatory gate)

Always call AskUserQuestion before Step 1 — unless smart-skipped (below).

Title: Deep Research — Profondeur

Ask: "Quel niveau de profondeur ? Ça fixe combien de sources je cherche, filtre et lis en profondeur."

Options (fixed — show all four with counts):

Option labelMode ID
Quick — ~30–50 sources cherchées · 8–12 retenues au filtre · 2–3 lues · ~10 minquick
Standard — ~80–120 cherchées · 25–40 retenues · 8–12 lues · ~20 minstandard
Literature review (recommandé) — 150–250+ cherchées · 50–80 retenues · 15–25 lues · ~40–60 minliterature-review
Extrême ⚠️ — ~2 000 cherchées · 20 sous-agents · 40–60 lues · coût tokens & temps élevés (~1–3 h)extreme

If user picks extreme → STOP — go to Step 0d (do not confirm or start yet).

For quick / standard / literature-review, confirm in one line before Step 1, e.g.: Mode literature-review — je vise 150–250+ sources découvertes, 15–25 lectures en profondeur.

0d — Extreme confirmation (mandatory for extreme only)

Second gate — never skip. Call AskUserQuestion:

Title: Deep Research — Extrême ⚠️

Ask: "Mode extrême : ~2 000 sources via 20 sous-agents en parallèle (WebSearch massif). Coût estimé : 500k–2M+ tokens et 1–3 heures. Les APIs peuvent plafonner avant 2k — je rapporterai le compte réel. Tu confirmes ?"

Options:

  • Oui — lancer le mode extrême (j'accepte tokens + temps)
  • Non — revenir au choix de profondeur (Step 0c)

If Non → re-run Step 0c.

If Oui → confirm in one line, e.g.: Mode extreme confirmé — 20 sous-agents, cible ~2 000 sources découvertes, 40–60 lectures en profondeur.

Smart-skip (no depth question) only when the user already named a mode or time budget:

User saidMode
quick, "rapide", "5 min", "10 min"quick
standard, "moyen", "~20 min"standard
literature-review, "recherche approfondie", "literature review", "complet", "full"literature-review
extreme, "extrême", "2000", "2 000", "max depth"extreme — still run Step 0d
/deep-research quick (mode in slash args)matching mode

Not smart-skip: bare /deep-research, "vas-y", "go", "lance" without a mode → ask.

Extreme never smart-skips Step 0d — even if user said "extreme" upfront, always show the cost gate.

Depth modes reference (must match references/screening-funnel.md):

ModeDiscoveredScreened inRead in depthCited in synthesisTime hint
quick30–508–122–3≤2–3~10 min
standard80–12025–408–12≤8–12~20 min
literature-review150–250+50–8015–25≤15–25~40–60 min
extreme~2 000300–50040–60≤40–60~1–3 h ⚠️

Step 1: Research plan

QUESTION: <one sentence>
SUB_QUESTIONS: <5–8 bullets>
INCLUSION: <what counts as on-topic>
EXCLUSION: <what to reject>
QUERY_ANGLES: <12–20 distinct angles for literature-review; 20 non-overlapping clusters for extreme>

Load references/screening-funnel.md, references/source-tiers.md, references/report-template.md.

For extreme also load references/extreme-orchestration.md and write research/<slug>/discovery/plan.md (20 angle clusters).

Step 2: Discover — cast the wide net

This step dominates. Do not proceed to deep reading until the discovery target is met or max rounds exhausted.

Skip if resume and discovery target already met in existing index.

Search rounds (literature-review)

Run 8–15 rounds of parallel WebSearch (4–5 queries per round). Each round uses new query angles from the plan — not repeats.

Rotate across:

AngleExample
Survey / SOTA"<topic>" systematic review
Mechanism"<mechanism>" principle
Seminal<founding author> <year>
Recent<topic> 2024..2026
Venuesite:arxiv.org, site:ieee.org, conference name
Appliedcase study deployment
Critiquelimitations challenges
Adjacentsynonym terms, related subfields
Grey littechnical reports, theses, industry whitepapers
FR/localif question needs it

After each round: append new unique candidates to sources-index.md:

# Sources index — <slug>

**Question:** ...
**Mode:** literature-review
**Last updated:** <YYYY-MM-DD>

| # | Title | URL | Found via | Tier est. | Screen | Exclude reason |
|---|-------|-----|-----------|-----------|--------|----------------|
| 1 | ... | ... | survey query | 2 | pending | |

Dedup by URL / DOI / arXiv ID. Target: 150–250+ rows before screening.

quick / standard: fewer rounds per funnel table — same logging discipline.

Extreme — parallel sub-agent discovery

Only after Step 0d confirmed. Follow references/extreme-orchestration.md.

  1. Create research/<slug>/discovery/ and discovery/plan.md (20 angle clusters)
  2. Launch 20 sub-agents in one parallel batch via your environment's sub-agent/task mechanism; choose the fastest/most economical model available for discovery
  3. Each agent targets ~100 candidates → discovery/shard-NN.md (WebSearch only, no WebFetch)
  4. Merge all shards → sources-index.md + discovery/merge-log.md (global dedup, honest count)
  5. If merged unique < 1 000 → tell user extreme target missed; offer extend or downgrade

Do not run extreme discovery single-threaded — the 20-agent fan-out is the point.

Step 3: Screen — title + abstract

Process every pending row in batches of 25–40. On resume, start at the first pending row.

  1. Use snippet; WebFetch abstract only when title/snippet ambiguous
  2. Set Screen: include or exclude + reason code (OFF_TOPIC, DUPLICATE, LOW_TIER, PAYWALL_NO_ALT, LANGUAGE, OUT_OF_DATE)
  3. For include → assign tier estimate; promote best to eligible

Screen 60–80% out. Typical literature-review outcome: ~50–80 include from 200 discovered.

Extreme: launch up to 10 screening sub-agents in parallel (see extreme-orchestration.md); merge into sources-index.md. Target 300–500 include from ~2 000.

Update sources-index.md in place as you go.

Step 4: Rank eligible → select for deep read

Rank eligible sources (weights: answers question 35%, tier 25%, recency 15%, access 15%, non-redundancy 10%).

Promote top N to read per mode (15–25 for literature-review; 40–60 for extreme). Mark others eligible — not deep-read with one-line why.

Step 5: Read in depth

WebFetch each read source. Extract: thesis, methods, results, limitations.

Prefer arXiv / author PDF when paywalled. Skim abstracts only for eligible not promoted if they inform the funnel counts.

Read failure protocol

If WebFetch fails (403, paywall without alternative, unreadable PDF, timeout):

  1. Mark the source read-failed in sources-index.md with a one-line reason
  2. Promote the next eligible source to read to meet the mode's read target
  3. Never summarize or cite a source not successfully read in depth

Context management (literature-review and above)

During Step 5, append structured notes as you read to research/<slug>/notes.md (or studies/<slug>/notes.md if study-linked):

## <Author year> — <short title>
- **Thesis:** ...
- **Methods:** ...
- **Results:** ...
- **Limits:** ...

Synthesize in Step 6 from this file — not from memory alone. For large read lists, batch reads via sub-agents is allowed if your environment supports it (same pattern as extreme discovery).

Step 6: Synthesize

Write report.md per references/report-template.md — in the user's language (translate template headings as needed).

  • Screening funnel table with real counts from sources-index.md
  • Executive summary — answer first
  • Synthesis by theme — from read sources only (via notes.md)
  • Exclusion summary — aggregate reason codes
  • Pointer to full sources-index.md

If discovered < 150 in literature-review mode → ## Search coverage section: shortfall, untried angles, offer extend pass.

If extreme and discovered < 1 500 → ## Search coverage + ## Extreme run metadata per extreme-orchestration.md.

Step 7: Deliver

Tell the user:

  1. Paths: report.md + sources-index.md (+ notes.md if written)
  2. Funnel counts — discovered / screened / read / cited
  3. Direct answer — 2–3 sentences
  4. Best source to read first
  5. Confidence — high | medium | low

If discovered < target: say how many more rounds would close the gap.

Suggest (do not auto-route): /layout-html for mise en page HTML — works on this report or any other text.

Escape hatches

User saysAction
quick / 5 minSmart-skip depth ask → 30–50 discovered, 2–3 read
standardSmart-skip depth ask → 80–120 discovered, 8–12 read
literature-review / "recherche approfondie"Smart-skip depth ask → 150–250+ discovered, 15–25 read
extreme / "extrême"Smart-skip depth ask → still require Step 0d → 20 agents, ~2k target
vas-y / go without modeAsk depth via interactive question — do not default silently
resumeLoad existing sources-index.md; continue at first pending or incomplete read; do not restart discovery
stop / arrête (extreme)Halt sub-agents; merge partial index; report funnel so far
extendAppend new discovery round to existing sources-index.md, re-screen, update report
free onlyExclude paywalled without preprint
no fileChat summary + funnel counts only

Self-check

  • Overwrite/resume gate passed before first write (Step 0b)
  • sources-index.md exists with actual discovered count
  • Literature-review: ≥150 discovered OR shortfall documented
  • Every exclude has a reason code
  • Mode-appropriate deep-read count (15–25 literature-review; 40–60 extreme)
  • Read failures marked read-failed; replacements promoted; no citation of unread sources
  • Extreme: Step 0d confirmed; 20 shard files attempted; merge-log.md exists
  • Extreme: never claim 2k discovered if merge count is lower
  • Funnel table in report matches index counts; cited ≤ read
  • Synthesis cites only deep-read sources
  • Each SUB_QUESTION from Step 1 is addressed in synthesis or listed under Open questions
  • notes.md written incrementally for literature-review+ before synthesis

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.