External Context Research
Yeachan-Heo/oh-my-claudecode
Breaks a research question into two to five facets and sends parallel document-specialist agents to search the web and documentation, then merges the results.
A skill your agent uses when searching the web for current, up-to-date data during a research phase — version checks, ecosystem changes, API deprecations, tool comparisons, or any claim that needs…
$ npx skills add WrongStack/WrongStack --skill research-web -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install WrongStack/WrongStack research-web --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/WrongStack/WrongStack.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/core/skills/research-web .claude/skills/research-web && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "research-web" agent skill from https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-web into .claude/skills/research-web/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "research-web", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-webType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add WrongStack/WrongStack --skill research-web -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install WrongStack/WrongStack research-web --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/WrongStack/WrongStack.git skills-src && mkdir -p .agents/skills && cp -r skills-src/packages/core/skills/research-web .agents/skills/research-web && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "research-web" agent skill from https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-web into .agents/skills/research-web/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "research-web", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add WrongStack/WrongStack --skill research-web -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install WrongStack/WrongStack research-web --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/WrongStack/WrongStack.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/packages/core/skills/research-web .cursor/skills/research-web && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "research-web" agent skill from https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-web into .cursor/skills/research-web/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "research-web", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/WrongStack/WrongStack.git --path packages/core/skills/research-web--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add WrongStack/WrongStack --skill research-web -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install WrongStack/WrongStack research-web --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/WrongStack/WrongStack.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/packages/core/skills/research-web .gemini/skills/research-web && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "research-web" agent skill from https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-web into .gemini/skills/research-web/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "research-web", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install WrongStack/WrongStack research-webInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add WrongStack/WrongStack --skill research-web -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/WrongStack/WrongStack.git skills-src && mkdir -p .github/skills && cp -r skills-src/packages/core/skills/research-web .github/skills/research-web && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "research-web" agent skill from https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-web into .github/skills/research-web/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "research-web", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add WrongStack/WrongStack --skill research-web -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install WrongStack/WrongStack research-web --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/WrongStack/WrongStack.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/packages/core/skills/research-web .opencode/skills/research-web && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "research-web" agent skill from https://github.com/WrongStack/WrongStack/tree/main/packages/core/skills/research-web into .opencode/skills/research-web/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "research-web", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
research-webA skill your agent uses when searching the web for current, up-to-date data during a research phase — version checks, ecosystem changes, API deprecations, tool comparisons, or any claim that needs…
Research Web is an agent skill from WrongStack/WrongStack. Use this skill when searching the web for current, up-to-date data during a research phase — version checks, ecosystem changes, API deprecations, tool comparisons, or any claim that needs live verification against sources newer than the model's training cutoff. Triggers: user says "research", "current version", "is this still true", "latest", "what's new in", "breaking changes", "find current", "web research", "search the web", "look up".
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `SKILL.save.md`).
It sits in Agent Workflows, covering Web search and Subagents. The repository describes itself as: An AI coding agent that reads your code, edits files, runs commands, and reasons through bugs — across a terminal REPL, a full-screen TUI, and a browser UI, while you keep your… The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 57f6018. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
react.devFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Research Web loads about 3.6k tokens when it runs. Until then it costs about 114 tokens; SKILL.md has 1,023 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from WrongStack/WrongStack at commit 57f6018, republished under its MIT licence (© WrongStack). 1,023 words, ~3,575 tokens.
.claude/skills/research-web/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Teaches the agent how to conduct current-data web research with discipline:
when to search, how to cross-validate, how to inject findings for reuse, and
how to delegate research to subagents. Complements the research-web mode
(which provides tool prioritization and behavioral gating); this skill
provides the deep methodology and patterns the mode prompt can't fit.
context_manager with add_note
to inject a structured summary. Never re-research the same topic.search for discovery; fetch to read a known page
or a raw registry/API endpoint.Not every research task needs the same approach. Match the workflow to the need:
When: "What's the latest version of React?" "Is package X still maintained?" Pattern:
search("React latest stable version 2025") → discover version
fetch("https://react.dev/versions") → verify against authoritative source
context_manager add_note("## Research: React version\n- 19.2.0 (March 2025)\n- Source: react.dev")Budget: 1 search + 1 fetch = ~2000 tokens. Done in one turn.
When: "How has Next.js middleware changed across 14.x → 15.x?" Pattern:
Turn 1: search("Next.js middleware changes 14 to 15") → collect URLs
Turn 2: fetch(upgrade guide), fetch(changelog) → parallel fetches
Turn 3: cross-reference, inject structured findingsBudget: 2 searches + 2-3 fetches = ~5000 tokens. Use parallel fetches.
When: "Compare the top 5 React state management libraries in 2025" Pattern: Delegate to subagents. Each researches one library, leader aggregates. See "Subagent Delegation" section below.
| Tool | Best for | Avoid for |
|---|---|---|
search | Broad discovery, finding current URLs, getting an overview | Deep detail (use fetch after) |
fetch | Reading a specific page for detail, authoritative confirmation | Broad queries (use search first) |
context_manager | Injecting research findings into conversation for future turns | Research itself (this is the output tool) |
┌─────────────────┐
│ What do I need? │
└────────┬────────┘
┌────────────────┼────────────────┐
▼ ▼ ▼
"Discover URLs" "Read a page" "Raw API data"
│ │ │
search fetch fetch
│ │
└────────┬───────┘
▼
context_manager
add_noteRate every source before citing it:
| Tier | Examples | Trust |
|---|---|---|
| Primary | Official docs, GitHub releases, registry APIs, RFCs | Cite as fact |
| Secondary | Well-known tech blogs, conference talks by maintainers | Cite with "according to" |
| Tertiary | Stack Overflow, Reddit, personal blogs, LLM-generated content | Corroborate before citing |
Recency check:
Structured add_note formats for different research outcomes. The format matters —
future turns need to parse these quickly without re-reading raw search results.
## Research: [package] version
- Current latest: [version] ([date])
- Previous: [version] (for context)
- Registry source: [npm/pypi/crates.io URL]
- Confirmed via: [source URL]## Research: [package] [feature] changes
- [Version]: [what changed]
- [Version]: [what changed]
- Breaking: [list of breaks]
- Migration path: [if documented]
- Source: [upgrade guide URL]## Research: [topic] comparison
- [Tool A]: [key points, version, status]
- [Tool B]: [key points, version, status]
- Recommendation: [with rationale]
- Sources: [URL, URL]## Research: [topic] — no current changes found
- Searched: [query, query]
- Result: No breaking changes / deprecations / version bumps found
- Checked on: [date]Always include a null-result note. Without it, future turns may re-research the same topic thinking the data was never gathered.
For landscape surveys and parallel research, delegate to subagents carrying
this skill. The research and search roster roles are tuned for this.
// Leader: fan out one topic per subagent
batch_tool_use([
{
tool: "delegate",
input: {
task: "Research current state of Zustand: latest version, breaking changes in 5.x, ecosystem position. Inject findings via context_manager.",
role: "research"
}
},
{
tool: "delegate",
input: {
task: "Research current state of Jotai: latest version, breaking changes, ecosystem position. Inject findings via context_manager.",
role: "research"
}
},
{
tool: "delegate",
input: {
task: "Research current state of Valtio: latest version, breaking changes, ecosystem position. Inject findings via context_manager.",
role: "research"
}
},
])// Leader: one topic, phased research
delegate({
task: "Research React 19 Server Components: what changed from 18→19, current best practices for 'use client' boundaries, known pitfalls. Cross-reference react.dev docs and the GitHub release notes. Inject structured findings.",
role: "research"
})| Research type | maxIterations | maxToolCalls | Notes |
|---|---|---|---|
| Quick lookup | 3 | 6 | 1 search + 1 fetch + inject |
| Deep investigation | 8 | 20 | Multiple searches + cross-ref |
| Landscape survey | 12 | 30 | Multiple searches + fetches per topic |
Source A (official docs): React 19.2.0
Source B (npm registry): 19.2.0
Source C (GitHub releases): 19.2.0
→ Cite as confirmed. No need to fetch a 4th source.Source A (blog post): Next.js 15.2 deprecated middleware edge runtime
Source B (official docs): Middleware now defaults to Node.js, edge still available
→ Dig deeper. The blog conflated "default change" with "deprecation".
→ Fetch the actual upgrade guide for the precise language.
→ Flag the disagreement in your findings.Source A (GitHub issue comment): "This API is being removed in v4"
→ Mark as TENTATIVE. State: "One source claims... cannot confirm."
→ If the claim is critical, search specifically for confirmation.
→ Otherwise, move on — don't spend budget chasing unconfirmed rumors.| Action | Approximate cost | When to use |
|---|---|---|
search (5 results) | ~500 tokens | Always first — cheap discovery |
fetch (single page) | ~1000-2000 tokens | Only for authoritative sources |
context_manager add_note | ~0 tokens (metadata op) | After every research cycle |
delegate (quick lookup subagent) | ~$0.05-0.15 | When research would bloat your context |
delegate (deep investigation) | ~$0.20-0.50 | Landscape surveys only |
Rule of thumb: Don't spend more on research than the answer is worth. A version check shouldn't cost $0.50. A landscape survey justifying an architecture decision might be worth $2.00.
// ❌ Turn 5: Agent forgets it already researched React version
search("React latest version")
// ✅ Turn 2: Agent injected findings via add_note
// Turn 3-5: Agent sees the note in conversation — skips re-search// ❌ Guessing URLs wastes fetches
fetch("https://react.dev/blog/2025/03/15/react-19-2") // 404
// ✅ Search discovers the real URL first
search("React 19.2 release blog post")
fetch(<result from search>)// ❌ Bloating context with raw JSON
context_manager add_note(JSON.stringify(searchResults))
// ✅ Structured summary
context_manager add_note("## Research: React version\n- 19.2.0\n- Source: react.dev")// ❌ One blog post becomes "truth"
"The React team recommends X" — based on one Medium article from 2023
// ✅ Cross-referenced
"The React docs recommend Y (react.dev). A 2024 blog post also suggests Y.
One 2023 article suggests X, but this appears outdated."// ❌ 7 searches on the same topic, each slightly rephrased
search("React 19 new features")
search("React 19 what changed")
search("React 19 release notes changes")
search("React 19 difference from 18")
// ...
// ✅ 1-2 broad searches, then targeted fetches
search("React 19 release notes breaking changes")
fetch(<react.dev blog>)
fetch(<GitHub releases>)
// Done. Inject findings.// ❌ User asks for a quick null-check fix, agent starts web searching
User: "fix the null deref in auth.ts line 42"
Agent: search("TypeScript null check best practices") // NO
// ✅ Research mode is for analysis/discussion phases, not tactical edits
// The agent already knows how to fix a null deref — just fix it.1. TRIGGER — User asks for current data OR agent realizes knowledge is stale
2. CLASSIFY — Quick lookup? Deep investigation? Landscape survey?
3. SEARCH — search with 5-8 results for broad discovery
4. FETCH — fetch 1-2 authoritative results for detail (parallelize if >1)
5. VALIDATE — Cross-reference: 2+ sources agree? Flag single-source claims
6. INJECT — context_manager add_note with structured findings
7. CITE — In your response, cite sources for every factual claimcontext_manager notes, future turns see it. Re-searching the same topic is a context-bloat failure.fetch("https://react.dev/blog/2025/03/15/...") is a 404 waiting to happen.search(...). Future turns need to parse, not re-read.context_manager add_note with structured summary<nextsteps> lists any open follow-up research or pending validationtech-stack — for package version verification and ecosystem validationnode-modern — for Node.js-specific version and API checksreact-modern — for React-specific version and API checkssecurity-scanner — for CVE and vulnerability researchprompt-engineering — for crafting effective search queriesmulti-agent — for fanning out research to subagentsoutput-standards — for standardized <nextsteps> formatting© WrongStack, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in packages/core/skills/research-web of WrongStack/WrongStack.
Open the folder on GitHubat commit 57f6018
Research Web next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Research Web this skillWrongStack/WrongStack | 370 | — | ~3.6k | Automated safety check: Pass | MIT | |
| External Context ResearchYeachan-Heo/oh-my-claudecode | 40k | — | ~545 | Automated safety check: Pass | MIT | |
| Hanzi Browsehanzili/hanzi-browse | 177 | — | ~2.4k | Automated safety check: Pass | Custom licence | |
| Web ResearchJuncai22/spring-ai-agent-learning | 123 | 3 repos | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| Pi AgentK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~2.1k | Automated safety check: Pass | MIT | |
| WebGPTNhahan/WebGPT | 117 | — | ~1.4k | Automated safety check: Pass | MIT |
Yeachan-Heo/oh-my-claudecode
Breaks a research question into two to five facets and sends parallel document-specialist agents to search the web and documentation, then merges the results.
hanzili/hanzi-browse
Delegates a browsing task to a sub-agent running in the USER'S OWN Chrome — the browser they have open right now, already signed into everything.
Juncai22/spring-ai-agent-learning
A skill your agent uses for requests related to web research; it provides a structured approach to conducting comprehensive web research
K-Dense-AI/scientific-agent-skills
Builds with and operates Pi, the minimal terminal coding harness.
Nhahan/WebGPT
Hands bounded tasks from Codex to a signed-in ChatGPT web session at a chosen reasoning level, or opens a terminal chat in your project that you control.
sweetcornna/free-search-mcp
Use with the free-search MCP tools whenever a web lookup must yield facts someone will rely on: dates, deadlines, prices, prizes, fees, rules, eligibility, schedules, versions, statistics, news, or…
WrongStack/WrongStack
Design or substantially improve user-facing interfaces with a product-specific visual direction, content hierarchy, and rendered critique.
WrongStack/WrongStack
A skill your agent uses to audit an interface that already exists and say precisely why it looks generated, templated, or unfinished — a scored rubric across composition, typography, color, states…
WrongStack/WrongStack
A skill your agent uses when external coding agents (Claude Code, Aider, custom scripts) need to participate in the project's shared WrongStack mailbox, or when a user asks to "expose the mailbox"…
WrongStack/WrongStack
A skill your agent uses whenever work can be split across multiple AI agents running in parallel, or when orchestrating leader/worker patterns in WrongStack.
WrongStack/WrongStack
Use this skill before asserting that a CSS, HTML or accessibility capability is available, unavailable, or the right tool — it carries dated, refreshable platform facts and refuses to let stale…
WrongStack/WrongStack
A skill your agent uses when the user wants to communicate with WrongStack's shared project mailbox from outside WrongStack — read messages sent by WrongStack agents, send replies, broadcast to all…
Categories
A skill your agent uses when searching the web for current, up-to-date data during a research phase — version checks, ecosystem changes, API deprecations, tool comparisons, or any claim that needs…. Research Web is an agent skill from WrongStack/WrongStack. Use this skill when searching the web for current, up-to-date data during a research phase — version checks, ecosystem changes, API deprecations, tool comparisons, or any claim that needs live verification against sources newer than the model's training cutoff.
Research Web fits situations like: searching the web for current; up-to-date data during a research phase — version checks; ecosystem changes; API deprecations.
Run `npx skills add WrongStack/WrongStack --skill research-web -a claude-code`. Or copy the skill folder (packages/core/skills/research-web in WrongStack/WrongStack) into .claude/skills/research-web in your project. Claude Code loads it when a task matches its description.
Run `npx skills add WrongStack/WrongStack --skill research-web -a codex`. Or copy the skill folder (packages/core/skills/research-web in WrongStack/WrongStack) into .agents/skills/research-web in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add WrongStack/WrongStack --skill research-web -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/research-web, .gemini/skills/research-web, .github/skills/research-web and .opencode/skills/research-web in your project.
SKILL.md names no scripts, command-line tools or credentials: Research Web is instructions for the agent only. Our summary lists: Node.js.
SKILL.md names 1 domain. In commands or code: react.dev; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Research Web is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Research Web: External Context Research (Yeachan-Heo/oh-my-claudecode, 40k stars), Hanzi Browse (hanzili/hanzi-browse, 177 stars), Web Research (Juncai22/spring-ai-agent-learning, 123 stars) and Pi Agent (K-Dense-AI/scientific-agent-skills, 48k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
WrongStack (a GitHub organization) maintains it in WrongStack/WrongStack, which has 370 GitHub stars. The repository holds 38 skills in this directory. The repository was last updated on October 7, 2026.
Source: WrongStack/WrongStack on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.