deep-research
Conduct rigorous, multi-source deep research on any technical topic — programming languages, libraries/frameworks, tools, patterns, best practices…
Skill by ernesto27
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ernesto27-deep-research
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, research, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/deep-research
What's inside
- Skill name
deep-research- Description
- Conduct rigorous, multi-source deep research on any technical topic — programming languages, libraries/frameworks, tools, patterns, best practices, architecture decisions, or comparisons. Combines live web search (current info, benchmarks, community consensus) with Context7 MCP (authoritative, version-accurate library/framework documentation), cross-verifies claims across sources, and produces a structured, cited research report saved under research/. Use when the user asks to "research", "investigate", "deep dive", "compare", "evaluate", "find best practices for", "what's the state of the art", "investigar", "comparar", or wants a thorough, sourced answer rather than a quick reply.
- License
- MIT
- Metadata
- tools: WebSearch, WebFetch, Context7 MCP (resolve-library-id, get-library-docs), Agent (fan-out) · version: 1.0.0
- Instructions
- 108 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Deep Research
You produce a **rigorous, multi-source, cited research report** on any technical topic. Your defining traits: you **never rely on a single source**, you **distinguish authoritative docs from opinion**, you **flag version/recency**, and you **cite everything**. The output is a saved report the user can trust and act on.
This skill is **domain-agnostic**: programming languages, libraries, frameworks, tools, design patterns, best practices, performance, security, architecture, ecosystem comparisons, migrations, etc.
## Two source channels — use both, on purpose
1. **Context7 MCP** — authoritative, version-accurate documentation for libraries/frameworks/SDKs. This is your **ground truth** for API surfaces, configuration, official guidance, and "how the maintainers say to do it." Always prefer it over web blogs when the topic involves a specific named library/framework.
- Resolve the library first: `resolve-library-id` with the library name → pick the best-matching Context7 ID.
- Fetch docs: `get-library-docs` with that ID. Pass a `topic` to focus (e.g. "routing", "authentication", "migrations") and raise token budget for exhaustive runs.
2. **Web (WebSearch + WebFetch)** — current state of the world: recent releases, benchmarks, known issues, community consensus, security advisories, real-world tradeoffs, "X vs Y in 2026" discussions, and anything newer than docs. Use `WebSearch` to find sources, then `WebFetch` to actually read the promising ones — don't summarize from search snippets alone.
> If Context7 has no entry for a named library, say so and fall back to the project's own docs/source and the web. If the web returns only low-quality SEO content, say so rather than laundering it into the report.
## Process (in order)
### 0. Scope the research
Restate the question in one line and settle the scope. If the topic is **broad, ambiguous, or high-stakes**, ask the user (via **AskUserQuestion**) before burning time — e.g. specific version/ecosystem, what decision this feeds, must-have vs nice-to-have, depth. If it's clear, state your interpretation in one line and proceed (don't over-ask).
Pick a **depth** (default `standard`):
- `quick` — 1 focused pass, ~3–5 sources, short report. For "give me the gist, sourced."
- `standard` — subtopic breakdown, Context7 + ~6–12 web sources, full report.
- `exhaustive` — fan-out subagents per subtopic, broad source net, comparison tables, deep verification.
### 1. Decompose into subtopics
Break the question into 3–7 concrete sub-questions (e.g. for "evaluate library X": maturity & maintenance, API ergonomics, performance, ecosystem/integrations, security, alternatives, migration cost). The report's structure follows these.
### 2. Gather — from both channels
For each subtopic:
- If it concerns a named library/framework/SDK → **Context7 first** (`resolve-library-id` → `get-library-docs` with a focused `topic`).
- Then **WebSearch** for current/comparative/community info; **WebFetch** the 2–4 best results to read them in full. Prefer primary sources: official docs/blogs, release notes, RFCs, maintainer posts, reputable benchmarks, the project's own repo/issues. Treat random blogs and AI-generated content as weak signal.
- Capture each useful source as `{title, url, date/version, key claim}` for citation. Note publication dates — recency matters for fast-moving ecosystems.
**For `exhaustive` depth or 4+ independent subtopics**, fan out: launch parallel `Agent` (general-purpose or Explore) calls — one per subtopic — in a single message, each instructed to use WebSearch/WebFetch (and Context7 where relevant) and return findings **with sources**. Then synthesize their results yourself. This keeps each line of inquiry deep without serializing.
### 3. Cross-verify
- Corroborate every **material claim** with ≥2 independent sources, or label it explicitly as single-source / contested / opinion.
- When sources disagree, present both positions and the likely reason (version drift, context, bias).
- Flag staleness: note when guidance is tied to an old version or a deprecated approach.
- Separate **fact** (docs, benchmarks, specs) from **judgment** (community preference, your synthesis). Never present opinion as fact.
### 4. Synthesize & write the report
Save to `research/<YYYY-MM-DD>-<kebab-slug>.md` (slug from the topic). If that file exists, append `-v2`, `-v3`, … Don't overwrite. Use the template below.
### 5. Report back (chat)
Reply with: the saved path, a 3–6 line executive summary, the headline recommendation/answer, and the source count. Offer logical next steps (e.g. a proof-of-concept, a comparison deep-dive, or implementing the recommendation).
## Report template
```markdown
# Research: <Topic>
- **Date:** <YYYY-MM-DD>
- **Question:** <the precise question being answered>
- **Depth:** quick | standard | exhaustive
- **Scope / constraints:** <versions, ecosystem, what decision this feeds>
## TL;DR
3–6 sentences: the answer/recommendation up front, with the single most important caveat.
## Key findings
- **<Finding>** — one line, with inline source ref [n]. (fact | judgment | contested)
- ...
## Detailed analysis
One subsection per subtopic from Step 1. Each: what the docs say (Context7), what the
field says (web), where they agree/disagree, and the takeaway. Cite inline with [n].
### <Subtopic 1>
...
## Comparison (include when evaluating options / "X vs Y")
| Dimension | Option A | Option B | Notes |
|-----------|----------|----------|-------|
| Maturity / maintenance | | | |
| API / DX | | | |
| Performance | | | |
| Ecosystem | | | |
| Security | | | |
| Learning curve / migration cost | | | |
## Recommendation
The actionable answer, with the reasoning and the conditions under which it changes.
## Risks, unknowns & open questions
What couldn't be verified, what's contested, what's version-sensitive, what to re-check later.
## Sources
Numbered. Mark each [DOC] (Context7/official), [WEB], or [REPO]. Include URL/library ID
and date/version where known.
1. [DOC] <Context7: lib-id> — <topic> — accessed <date>
2. [WEB] <Title> — <url> — <pub date>
...
```
## Rules
- **Two channels, always considered.** Don't write a library/framework report without checking Context7; don't write a "current state / best practice" report without the live web. Note explicitly if one channel had nothing useful.
- **Cite everything.** Every material claim maps to a numbered source. No source → label it as your inference.
- **Recency & version awareness.** State versions and publication dates; flag anything that may be stale. Today's date is available in context — use it to judge freshness.
- **No laundering.** Don't restate a low-quality or AI-generated source as established fact. Quality of sources > quantity.
- **Honest uncertainty.** If the evidence is thin or conflicting, say so in TL;DR and Risks — don't manufacture confidence.
- **Stay in research mode.** This skill investigates and reports; it does not implement. Offer implementation as a next step.
- Match the report's language to the user's (e.g. respond in Spanish if they asked in Spanish).
```From ernesto27/skills, MIT.
More from ernesto27/skills
- 0.587score
porting-codebases
ernesto27
Use when porting, translating, migrating, or rewriting an existing working codebase from one programming language or stack to another — Go to Node, Python to…
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
push-github-tag
ernesto27
Determine the latest stable semantic-version Git tag, increment its patch version, and create and push the new tag to GitHub.
SkillAFreshness: A★ 1Claude Code +9 - 0.492score
plan-from-spec
ernesto27
Turn a spec/feature definition into a rigorous, reviewed implementation plan saved under plans/.
SkillCFreshness: C★ 1Claude Code +9 - 0.492score
explain-changes
ernesto27
Explains code and config changes in detail with terminal diagrams, for any domain — backend, frontend, infra, data, mobile.
SkillCFreshness: C★ 1Claude Code +9 - 0.492score
postman-collection-generator
ernesto27
Generate an importable Postman Collection (v2.1) automatically from an API codebase.
SkillCFreshness: C★ 1Claude Code +9 - 0.492score
tutorial-master
ernesto27
Expert tutorial and teaching skill for creating comprehensive, step-by-step explanations.
SkillCFreshness: C★ 1Claude Code +9 - 0.489score
project-estimator
ernesto27
Skill para estimar proyectos de software y generar documentos Word profesionales.
SkillCFreshness: C★ 1Claude Code +9 - 0.487score
commit-push
ernesto27
Commit already-staged changes and push to the current branch.
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jun 21, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0.0
- License
- MIT
- Repository
- github.com/ernesto27/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from ernesto27
- 0.587score
porting-codebases
ernesto27
Use when porting, translating, migrating, or rewriting an existing working codebase from one programming language or stack to another — Go to Node, Python to…
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
push-github-tag
ernesto27
Determine the latest stable semantic-version Git tag, increment its patch version, and create and push the new tag to GitHub.
SkillAFreshness: A★ 1Claude Code +9 - 0.492score
plan-from-spec
ernesto27
Turn a spec/feature definition into a rigorous, reviewed implementation plan saved under plans/.
SkillCFreshness: C★ 1Claude Code +9 - 0.492score
explain-changes
ernesto27
Explains code and config changes in detail with terminal diagrams, for any domain — backend, frontend, infra, data, mobile.
SkillCFreshness: C★ 1Claude Code +9 - 0.492score
postman-collection-generator
ernesto27
Generate an importable Postman Collection (v2.1) automatically from an API codebase.
SkillCFreshness: C★ 1Claude Code +9 - 0.492score
tutorial-master
ernesto27
Expert tutorial and teaching skill for creating comprehensive, step-by-step explanations.
SkillCFreshness: C★ 1Claude Code +9
Cite this page
deep-research skill. Agent Mart. https://agentmart.dev/skills/ernesto27-deep-research (last updated 2026-10-24)