# Internet Search

> Tool-agnostic search — query construction, tool selection, source trust hierarchy.

- Skill: `ils15/internet-search` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ils15/internet-search`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ils15/internet-search/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools, Docs & Writing
- Author: ils15 (https://skillmd.com/u/ils15)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/ils15/internet-search

---


# Internet Search Skill

## 1. Tool Selection

Three search tools are available. Choose by task type:

| Task | Primary Tool | Why | Fallback |
|------|-------------|-----|----------|
| Library/framework docs, API reference, version migration | `context7` | Official docs + code examples, version-aware | `webfetch` known docs URL |
| Broad web search, technical Q&A, current info, news | `websearch` | Semantic search across indexed web, live crawl option | `webfetch` specific result URLs |
| Known URL (docs page, GitHub issue, blog post, changelog) | `webfetch` | Direct fetch of a specific page, returns markdown | — |

**Parallel rule**: `context7` + `websearch` can run simultaneously — they are independent tools.

---

## 2. Query Construction

### 2.1 Be Specific

```
❌ "Python async"
✅ "FastAPI background tasks SQLAlchemy async session 2024"

❌ "Docker error"
✅ "Docker multi-stage build COPY --from permission denied non-root"
```

### 2.2 Include Version

Append the target version or year to scope results:

```
"SQLAlchemy 2.0 async session pattern"
"Next.js 15 server components migration"
"React 19 use() hook"
```

### 2.3 Use Domain-Specific Keywords

```
# Framework/library — include name + key concept
"FastAPI dependency injection lifespan"

# Bug/error — include exact error message + language/framework
"TypeError: 'NoneType' object is not callable FastAPI"

# Comparison — make explicit
"Redis vs Valkey 2025 performance comparison"
```

---

## 3. Source Trust Hierarchy

Always escalate from the highest trust tier before falling back:

| Tier | Sources | Use for |
|------|---------|---------|
| **T1 — Authoritative** | Official vendor docs, RFC/specs, peer-reviewed papers, GitHub READMEs | Definitive answers, API contracts, algorithm correctness |
| **T2 — High-signal** | Stack Overflow (accepted/high-vote), GitHub Issues/Discussions, official changelogs | Real-world patterns, known bugs, version behaviors |
| **T3 — Useful, verify** | Hacker News, Reddit (engineering subs), well-cited blogs | Current opinions, ecosystem trends, practical tips |
| **T4 — Last resort** | Random tutorials, Medium articles, LLM-generated content | Background only — always cross-check with T1/T2 |

> Never cite T3/T4 as the sole source for a technical decision. Always pair with a T1 primary source.

---

## 4. Parallel Search Strategy

```
STEP 1 — PARALLEL (T1 sources):
  ├── context7 (library docs — structured, version-aware)
  └── websearch (broad web + community)

STEP 2 — webfetch (T1/T2 specific URLs):
  ├── Known docs page or GitHub README
  ├── Stack Overflow accepted answer
  └── GitHub issue / discussion

STEP 3 — ONLY IF NEEDED (T3):
  └── websearch with site:reddit.com or site:news.ycombinator.com

→ Synthesize after each step; stop when enough evidence gathered.
```

For known URLs, use `webfetch` directly. For search results that return URLs, `webfetch` the most promising ones for full content.

---

## 5. Result Format

Always return structured findings:

```markdown
## Research: {TOPIC}

**Answer**: [Direct answer, 1-2 sentences]

**Confidence**: High / Medium / Low
**Sources**:
| URL | Tier | Key Takeaway |
|-----|------|-------------|
| [official docs](url) | T1 | Confirms pattern X |
| [SO answer](url) | T2 | 342 votes — accepted fix |
| [GitHub issue #123](url) | T2 | Fixed in v2.1.0 |

**Caveats**: [Version-specific warnings, conflicting evidence, stale info]
```

---

## 6. Quality Checklist

Before finalizing, verify:

- [ ] **Recency** — info still valid? Flag anything >3 years old in fast-moving fields (JS/TS, LLMs, cloud infra).
- [ ] **Version alignment** — does the answer match the project's library/major version?
- [ ] **Primary over secondary** — prefer official docs over tutorials that re-explain them.
- [ ] **Confidence calibrated** — T3/T4 sources downgrade confidence. Single source = Low.
- [ ] **No hallucinated URLs** — only cite URLs from actual fetch results or officially documented patterns.
```

