web-research · git:20260614.f625805 · 2026-06-14 · sha256 011f160d834654cb
web-research git:20260614.f625805A
Immutable. This exact content is served forever at /api/v1/blob/011f160d834654cb.
--- name: web-research description: >- Use this whenever the user asks you to research a topic, find the current state of something, compare options, or gather background from the web — e.g. "what's the latest on X", "find the best approach to Y", "compare these three tools". Drives a scope → gather → gap-check → synthesize loop. tools: [web_search, fetch_url, memory_recall, memory_ingest, current_time] user_facing: true slash: research --- # Web Research A disciplined pipeline for turning an open question into a tight, sourced answer. ## Scale to the ask A fact lookup is one angle, one pass. "Compare X" is 3-5 dimensions. "Comprehensive analysis of X" is 5-8 dimensions and more rounds. Don't over-research a lookup or under-serve a survey. ## 1. Scope Break the question into a few **orthogonal dimensions** — focused sub-topics that together cover it (e.g. "Rust vs Go" → perf · memory · concurrency · ecosystem · adoption). A narrow question is one dimension; don't invent angles. When dimensions are independent, fan them out as parallel `task` calls (or one `task_batch`) instead of researching them serially. ## 2. Gather (per dimension) - **Reuse first** — `memory_recall` what's already known; don't re-derive it. - **Search wide, then deep** — `web_search` the dimension; for technical or contested topics run a second angle (parent topic, or community/code sources like Reddit/HN/GitHub/SO) so you don't trust one lens. Listicles are leads, not authority; prefer primary + recent. - **Read selectively** — `fetch_url` the 2-4 best hits per dimension; read deeply. Keep a **numbered source list** + a one-line key finding per dimension as you go. ## 3. Gap-check (conservative) Ask: does this answer the *original* question? Flag only 1-3 genuine gaps (not tangents), research them as new dimensions, repeat — up to ~3 rounds. Don't rewrite the question or chase saturation. ## 4. Synthesize Bottom line first; `##` headings for multi-dimension answers. **Every material claim carries a citation** to your numbered sources, inline as `[1]` (or `[1][3]` where evidence converges). Cite both sides of a real disagreement and say which is better-supported; flag uncertainty. List sources at the end. End with `Confidence: high | medium | low`; for deep research add 3-5 "Related topics". ## 5. Persist For substantial research, `memory_ingest` one concise durable finding (takeaway + key sources) so the knowledge base compounds — not raw dumps, and not for quick lookups. Keep it tight: the answer first, the process never. Let the citations carry the evidence.