From websearch
Web search, developer research, and library docs. Use for ANY web search, looking up docs, debugging errors, researching patterns, bootstrapping projects, resolving dependencies, exploring GitHub code, finding code examples, or ANY question requiring current/post-cutoff knowledge. NEVER use built-in WebSearch tool — always use this skill instead.
How this skill is triggered — by the user, by Claude, or both
Slash command
/websearch:websearchThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Search the web and research development topics using the `websearch` CLI.
Search the web and research development topics using the websearch CLI.
Based on the user's request, identify which area applies:
| Area | When to use | Supporting file |
|---|---|---|
| Debugging | Error messages, stack traces, crashes, deadlocks, performance issues | debug.md |
| Documentation | Library/API docs, usage examples, configuration references | docs.md |
| Patterns | Best practices, design patterns, architecture decisions, conventions | patterns.md |
| Bootstrapping | Project templates, starter configs, initial setup, scaffolding | bootstrap.md |
| Dependencies | Version conflicts, migrations, breaking changes, compatibility | deps.md |
| Code Examples | Find working code snippets, config examples, implementation samples | examples.md |
| Exploration | GitHub repos, finding libraries and implementations | explore.md |
| General | Everything else — news, facts, general questions | search.md |
| CLI Setup | Install, update, or troubleshoot the websearch CLI | cli-setup.md |
Read the matching supporting file for specific commands and strategies, then execute the search.
Before executing searches, assess the request complexity:
Simple (just search): Single question, clear scope, one area → search immediately.
Complex (offer interview): Any of these signals:
-m research modeWhen complexity is detected, offer the user a choice using AskUserQuestion:
"This looks like a complex topic. Want me to interview you first to nail down exactly what to search for?"
Options: Quick search (proceed immediately) / Interview first (refine the scope)
When the user confirms interview, immediately create tasks to track the process:
TaskCreate: "Interview: scope and context" (activeForm: "Interviewing about scope")
TaskCreate: "Interview: constraints and requirements" (activeForm: "Interviewing about constraints")
TaskCreate: "Interview: priorities" (activeForm: "Interviewing about priorities")
TaskCreate: "Build and approve search plan" (activeForm: "Building search plan")
TaskCreate: "Execute search plan" (activeForm: "Executing searches")
TaskCreate: "Synthesize results" (activeForm: "Synthesizing research results")
Mark each task in_progress as you start it, completed when done.
Level 1 — Scope (mark task in_progress): What specific aspects matter? What's the context? Use AskUserQuestion with concrete options based on the topic. (e.g., "Which parts of auth are you exploring?" with options: "Session management", "OAuth providers", "Token strategy")
Level 2 — Constraints (mark task in_progress): What tech stack, scale, or requirements apply? What have you already tried or ruled out? Use AskUserQuestion. (e.g., "Are you using a specific framework?" with relevant options)
Level 3 — Priorities (mark task in_progress, skip if already clear): What matters most — performance, simplicity, security? Any dealbreakers? Use AskUserQuestion.
After the interview, build a search plan and present it for approval using AskUserQuestion:
List 3-6 specific searches you plan to run, each with:
Ask: "Here's my search plan based on our discussion. Should I proceed?" Options: Execute plan / Adjust plan (let user provide feedback to refine)
If the user says "Adjust", revise and re-propose. Only execute after approval.
Once approved, create a task per search in the plan, then execute them — marking each in_progress/completed as you go. After all searches complete, synthesize the results.
Avoid -m research unless truly necessary. It is slow (up to 5 minutes), expensive, and often overkill.
Preferred approach: Run multiple focused searches with -m ask, -m search, or -m reason from different angles, then synthesize the results yourself. This is faster, cheaper, and usually produces better answers than a single broad research query.
When -m research IS appropriate:
When NOT to use -m research (even if user says "research"):
-m ask or -m reason-m reason-m ask-m ask/-m reason callsIf you must use -m research, run it in the background with run_in_background: true on the Bash tool, since it can take up to 5 minutes. Continue other work while waiting.
This plugin includes the Context7 MCP server for version-specific library documentation. Use the Context7 tools (resolve-library-id then query-docs) when:
Do NOT use Context7 for:
-m reason-p githubWorkflow: First mcp__plugin_websearch_context7__resolve-library-id to find the library ID, then mcp__plugin_websearch_context7__query-docs with a specific question. Context7 is slower and more token-expensive than websearch, so only use it when library-specific accuracy matters.
# The websearch binary (use whichever is available)
websearch "query"
# Key flags
-m <mode> # ask (default), search, reason, research (AVOID - see above)
-p <profile> # general (default), github, nodejs, python
--provider <p> # perplexity (default), brave, github
--include-sources # include citation URLs
--no-cache # bypass 60m cache
--json # JSON output
$ARGUMENTS
npx claudepluginhub dkmaker/my-claude-plugins --plugin websearchGuides doc lookup and web search workflow for investigating libraries, APIs, or unfamiliar patterns before implementation.
Guides WebSearch queries to find authoritative documentation, best practices, implementation patterns, and version-specific details for frameworks, APIs, and databases.
Researches external questions across library docs, web, local code, and GitHub examples, synthesizing sources with confidence ratings. Activates on research, API lookup, library comparison, or investigation prompts.