agentleFS
bmcszkbmcszk/agent-skills/skills/research/SKILL.md

research

Skill2 starsChanged 15 days agoMITView on GitHub

Use when a question needs multi-source web research beyond one search: deep dives, comparisons, fact-checks, tech or market scans, and cited reports. Runs an iterative plan-search-extract-synthesize loop with evidence labels, source tiers, gaps and contradictions. Not for single known-URL reads or one-shot lookups answered by the first search.

189 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use daily-arxiv, exp-eval 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.
  • LambenthanSkill

    daily-arxiv

    每日从 arXiv 拉取新论文,过滤相关性,auto-ingest 高优先级论文,检测 SOTA 更新

    Also in 5 projects that use this

  • LambenthanSkill

    exp-eval

    实验判决门:Review LLM 独立评判实验结果 → 4 种判决路径 → 自动更新 claims confidence、ideas status、graph edges

    Also in 5 projects that use this

  • truongtv22Skill

    Problem-Solving Techniques

    Apply systematic problem-solving techniques for complexity spirals (simplification cascades), innovation blocks (collision-zone thinking), recurring patterns (meta-pattern recognition), assumption constraints (inversion exercise), scale uncertainty (scale game), and dispatch when stuck. Techniques derived from Microsoft Amplifier project patterns adapted for immediate application.

    Also in 5 projects that use this

  • liufeng1976Skill

    setup-ts-deep-modules

    Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.

    Also in 43 projects that use this

  • skyllwtSkill

    exp-pilot-eval

    Pilot result evaluation — read pilot results, apply success criteria, update idea page (pilot_result, failure_reason if failed), generate PILOT_VERDICT_REPORT. Called by /ideate Phase 5 after /exp-pilot-run.

    Also in 4 projects that use this

  • skyllwtSkill

    exp-pilot-run

    Pilot experiment execution — read Pilot Spec YAML, write pilot code, run experiment(Confirm with the user before operation and require the applicant to conduct manual inspection), return results. Called by /ideate Phase 5. Does NOT modify wiki pages or judge pass/fail.

    Also in 4 projects that use this

  • +5 more from Lambenthan
  • +1 more from skyllwt

The file

We split this skill into the rules it gives an agent

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

  • 0

    Common

    Most of the 169 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Prefer operator-enriched queries: quoted phrases, site: for official hosts, filetype:pdf for specs and papers, -term to cut noise, a time …

    line 46
  2. Distinctive:

    Run one search per query, limit 8-10 results.

    line 50
  3. Very specific:

    After each round keep one cumulative state: per sub-question, status answered/partial/unanswered, findings with citations and labels, then …

    line 77
  4. Distinctive:

    Stop when every sub-question is answered or documented as a gap, the round cap is reached, or counter-evidence was searched at least once.

    line 84
  5. Very specific:

    Write the report from the research state, not from memory.

    line 91
  6. Distinctive:

    If synthesis fails, compile the raw findings with labels and say synthesis was not completed - never output nothing when sources exist.

    line 97

“Common” is measured: kept by at least 6 in 10 of the 169 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

Research

Deep research is a loop, not a search. Plan, then repeat query-search-extract-synthesize until evidence covers the question, then report with citations. Tools differ per runtime; the loop does not. Load references/tools.md when invoking concrete search or fetch tools, and references/report-format.md before writing the report.

Step 1 - Plan

  1. Restate the question as one sentence. If it is ambiguous, ask before searching.
  2. Split it into 3-6 sub-questions that together answer it.
  3. Classify the report: factual, comparison, product, how-to, fact-check, explainer.
  4. Set the round cap by complexity: simple 2, moderate 3, complex 5. The cap is a ceiling, not a target.

Step 2 - Date grounding

Inject the current date before any search. LLMs default to training-cutoff years and query stale terms. Any query needing a year uses the current year.

Step 3 - Iterative loop

Each round runs: gap queries, search, extract, synthesize, stop check.

3a - Gap-driven queries

  1. Round 1 targets the sub-questions; later rounds target documented gaps.
  2. Generate 2-4 queries per round. Never repeat a query that already returned results.
  3. From round 2 on, include one counter-evidence query against the leading answer. Zero refutes usually means weak searching, not absence of dissent.
  4. Prefer operator-enriched queries: quoted phrases, site: for official hosts, filetype:pdf for specs and papers, -term to cut noise, a time filter for freshness. See references/tools.md for the per-tool syntax.

3b - Search

  1. Run one search per query, limit 8-10 results.
  2. Empty result escalation: first empty, broaden keywords or synonyms; second consecutive empty, change domain, language, or angle; third, mark the sub-question a documented gap and move on.

3c - Extract with a quality filter

Discard before reading: thin landing pages, keyword-stub aggregators, login walls without a preview, already-fetched URLs. Then per source:

  1. Extract only goal-relevant facts; skip navigation and boilerplate.
  2. Assign each unique URL a numbered citation on first encounter; reuse it after.
  3. Tier the source: primary (official docs, filings, papers, pricing pages), secondary (tech press, analyst reports), tertiary (forums, wikis, aggregators). Tertiary never solely supports a material claim.
  4. Fetch failures go down the recovery ladder in references/tools.md - Wayback, archive.today, API pivot, browser. Cite snapshots with their archive date.

3d - Evidence labels

Tag every material fact (statistic, date, relationship, causal claim, quote):

  • [VERIFIED] - corroborated by 2+ independent cited sources
  • [SOURCED] - one named source, uncorroborated
  • [REASONED] - own inference, present as indicative, never as fact
  • [ESTIMATED] - derived calculation or stated assumption

Corroboration during dedup promotes [SOURCED] to [VERIFIED]. Never fabricate to fill a gap; an unanswerable sub-question is a documented gap.

3e - Synthesize into research state

After each round keep one cumulative state: per sub-question, status answered/partial/unanswered, findings with citations and labels, then a gap list. Deduplicate (cite the best or both for corroboration), surface contradictions with both attributions instead of silently arbitrating.

3f - Stop check

Stop when every sub-question is answered or documented as a gap, the round cap is reached, or counter-evidence was searched at least once. Budget guard: past round 2, summarize earlier rounds aggressively instead of carrying full extracts; favor synthesis over more gathering.

Step 4 - Report

Write the report from the research state, not from memory. Load references/report-format.md for the skeleton. Laws:

  1. Inline citations [N] on every factual claim; source table with tier and access date.
  2. Explicit Gaps and Contradictions sections; never hide them in prose.
  3. Facts keep their evidence labels in the text.
  4. If synthesis fails, compile the raw findings with labels and say synthesis was not completed - never output nothing when sources exist.

Step 5 - Provenance

External facts get "as of" dates when freshness matters (prices, versions, breaking news). A snapshot citation names the snapshot date. Unverified inference stays labeled, never asserted.

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.