Install
npx skillscat add iamthetonyb/able/atlas-skills-library-web-research Install via the SkillsCat registry.
SKILL.md
SKILL.md — Web Research
Search the web and synthesize findings into a structured report.
Purpose
Research a topic using web search, fetch relevant sources, and produce a synthesized summary with citations.
Triggers
- "research {topic}"
- "find out about {topic}"
- "look up {topic}"
- "search for {topic}"
- When user asks questions requiring current information
Trust Required
L1 (Observe) — This skill is read-only.
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| topic | string | yes | What to research |
| depth | string | no | "quick" (3 sources) or "deep" (10 sources). Default: quick |
| focus | string | no | Specific angle or question to answer |
Outputs
| Name | Type | Description |
|---|---|---|
| summary | markdown | Synthesized findings (200-500 words) |
| key_points | list | 3-5 bullet points with main takeaways |
| sources | list | URLs with titles, used in research |
| confidence | string | "high", "medium", "low" based on source quality |
Implementation
Step 1: Generate Search Queries
Based on the topic, generate 3-5 search queries:
- Main topic query
- Specific aspect queries
- Recent/news query (add "2026" or "latest")
Example for "AI agent security":
1. "AI agent security best practices"
2. "prompt injection defense 2026"
3. "LLM agent vulnerabilities OWASP"
4. "AI agent sandboxing techniques"Step 2: Execute Searches
Use web_search for each query:
results = []
for query in queries:
search_results = web_search(query, max_results=3)
results.extend(search_results)Step 3: Deduplicate and Rank
Remove duplicate URLs, prioritize:
- Official documentation
- Peer-reviewed or authoritative sources
- Recent publications (prefer 2025-2026)
- Avoid: forums, social media, SEO spam
Step 4: Fetch Top Sources
Use web_fetch on top 3-10 sources (based on depth):
contents = []
for source in top_sources:
content = web_fetch(source.url)
contents.append({
"url": source.url,
"title": content.title,
"text": content.content[:5000] # Truncate if huge
})Step 5: Synthesize
Combine information from all sources:
- Identify common themes
- Note contradictions
- Extract key facts
- Form coherent narrative
Step 6: Format Output
## Research: {topic}
### Summary
[200-500 word synthesis]
### Key Points
- Point 1
- Point 2
- Point 3
### Sources
1. [Title](url) — Brief note on what this contributed
2. [Title](url) — Brief note
3. [Title](url) — Brief note
### Confidence: {high/medium/low}
[Brief note on source quality and coverage]Example
Input:
research "OWASP LLM Top 10 2025" depth:quickOutput:
## Research: OWASP LLM Top 10 2025
### Summary
The OWASP LLM Top 10 2025 identifies the most critical security
risks for applications using large language models. Prompt injection
remains the #1 threat, now categorized as both direct (user-supplied)
and indirect (embedded in external content). New entries include
"Agentic Risks" reflecting the rise of autonomous AI agents with
tool access...
### Key Points
- Prompt injection is #1, with indirect injection most dangerous for agents
- "Agentic Risks" is new, covering tool misuse and privilege escalation
- Data poisoning moved up to #3 due to RAG vulnerabilities
- Recommendations emphasize defense-in-depth and human oversight
### Sources
1. [OWASP LLM Top 10 2025](https://owasp.org/...) — Primary source
2. [LLM Security Landscape 2025](https://...) — Industry analysis
3. [Agentic AI Security Guide](https://...) — Deep dive on agent risks
### Confidence: High
Multiple authoritative sources with consistent findings.Error Handling
| Error | Response |
|---|---|
| No search results | Try broader query, report if still empty |
| All fetches fail | Return search snippets only, note limitation |
| Contradictory sources | Present both views, note disagreement |
| Topic too broad | Ask user to narrow focus |
Notes
- Always cite sources
- Prefer recent information (2025-2026)
- If topic is time-sensitive, note when sources were published
- For controversial topics, present multiple perspectives
- Never present speculation as fact