parallel-web-search

DEFAULT for all research and web queries. Use for any lookup, research, investigation, or question needing current info. Fast and cost-effective. Only use parallel-deep-research if user explicitly requests 'deep' or 'exhaustive' research.

By parallel-web · 13,099 installs

npx skills add parallel-web/parallel-agent-skills --skill parallel-web-search

Source repository · Upstream listing

Web Search Search the web for: $ARGUMENTS Command Choose a short, descriptive filename based on the query (e.g., ai chip news , react vs vue ). Use lowercase with hyphens, no spaces. Substitute it into the command inline — $FILENAME and <keyword below are placeholders, not shell variables; do not copy them verbatim. Concrete example for a query about React 19: The first argument is the objective — a natural language description of what you're looking for. It replaces multiple keyword searches with a single call for broad or complex queries. Add q flags for specific keyword queries to supplement the objective. The o flag saves the full results to a JSON file for follow up questions. Options if needed: after date YYYY MM DD for time sensitive queries include domains domain1.com,domain2.com to limit to specific sources exclude domains domain.com to filter out noisy sources mode turbo for simple fact lookups where speed matters most; supports English and Japanese queries mode fast for high quality search within an approximately one second latency budget; requires CLI ≥ 0.9.2, and latency is not guaranteed mode advanced for harder questions (multi step, agentic search). Keep the default basic unless the request needs another mode location us (ISO 3166 1 alpha 2) for geo targeted results session id "<returned session id " to group related Search/Extract calls when a prior response returned one. A session id or search id is not a Task interaction ID or research run ID; never send it to research status/poll or previous interaction id Parsing results Read the saved o JSON file as the authoritative payload. Result and excerpt limits bound requested content, but stdout can still exceed the tool's output limit. Truncated stdout is not parseable JSON and is not proof of incomplete saved results. Inspect an existing output path before using it because Search overwrites that file. For each result, extract: title, url, and publish date if provided; omit unknown dates Useful content from excerpts (skip navigation noise like menus, footers, "Skip to content") Check the exit status, returned API error and warnings before presenting results. On an error or empty results , report what happened and do not fabricate an answer. An old output file is not evidence that a failed request succeeded. For sparse results, state the coverage limits; refine the objective or queries only when useful for the user's request. Response format CRITICAL: Every claim must have an inline citation. Use markdown links like [Title](URL) pulling only from the JSON output. Never invent or guess URLs. Synthesize a response that: Leads with the key answer/finding Includes specific facts, names, numbers, dates Cites every fact inline as [Source Title](url) — do not leave any claim uncited Organizes by theme if multiple topics End with a Sources section listing every URL referenced: This Sources section is mandatory. Do not omit it. Only include source dates that were returned or verified in the retrieved content. Leave the date out when unknown. After the Sources section, mention the output file path ( /tmp/$FILENAME.json ) so the user knows it's available for follow up questions. Setup If parallel cli is not found, install and authenticate: If a documented command or option is missing, check the installed version and upgrade through its installation method: standalone parallel cli update , pipx pipx upgrade parallel web tools , uv uv tool upgrade parallel web tools , Homebrew brew upgrade parallel web/tap/parallel cli , or npm npm update g parallel web cli . Verify help in the same terminal before retrying. For authentication errors, inspect parallel cli auth json and its authenticated boolean; exit zero alone does not prove authentication. A 403 can indicate permissions, policy or billing. Report the actual error; check balance only for a billing specific failure and never add funds without explicit confirmation.