From sundial-org-awesome-openclaw-skills-4
Performs AI-optimized web searches via Tavily API for research, current events, domain-specific queries, fact-checking, and news. Delivers structured results, AI summaries, raw content extraction, and images.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-2 --plugin sundial-org-awesome-openclaw-skills-4This skill uses the workspace's default tool permissions.
Tavily is a search engine specifically optimized for Large Language Models and AI applications. Unlike traditional search APIs, Tavily provides AI-ready results with optional answer generation, clean content extraction, and domain filtering capabilities.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Tavily is a search engine specifically optimized for Large Language Models and AI applications. Unlike traditional search APIs, Tavily provides AI-ready results with optional answer generation, clean content extraction, and domain filtering capabilities.
Key capabilities:
basic) and comprehensive (advanced) search modesgraph TB
A[User Query] --> B{Search Mode}
B -->|basic| C[Fast Search<br/>1-2s response]
B -->|advanced| D[Comprehensive Search<br/>5-10s response]
C --> E[Tavily API]
D --> E
E --> F{Topic Filter}
F -->|general| G[Broad Web Search]
F -->|news| H[News Sources<br/>Last 7 days]
G --> I[Domain Filtering]
H --> I
I --> J{Include Domains?}
J -->|yes| K[Filter to Specific Domains]
J -->|no| L{Exclude Domains?}
K --> M[Search Results]
L -->|yes| N[Remove Unwanted Domains]
L -->|no| M
N --> M
M --> O{Response Options}
O --> P[AI Answer<br/>Summary]
O --> Q[Structured Results<br/>Title, URL, Content, Score]
O --> R[Images<br/>if requested]
O --> S[Raw HTML Content<br/>if requested]
P --> T[Return to Agent]
Q --> T
R --> T
S --> T
style E fill:#4A90E2
style P fill:#7ED321
style Q fill:#7ED321
style R fill:#F5A623
style S fill:#F5A623
# Simple query with AI answer
scripts/tavily_search.py "What is quantum computing?"
# Multiple results
scripts/tavily_search.py "Python best practices" --max-results 10
# Comprehensive research mode
scripts/tavily_search.py "Climate change solutions" --depth advanced
# News-focused search
scripts/tavily_search.py "AI developments 2026" --topic news
# Search only trusted domains
scripts/tavily_search.py "Python tutorials" \
--include-domains python.org docs.python.org realpython.com
# Exclude low-quality sources
scripts/tavily_search.py "How to code" \
--exclude-domains w3schools.com geeksforgeeks.org
# Include relevant images
scripts/tavily_search.py "Eiffel Tower architecture" --images
| Mode | Speed | Coverage | Use Case |
|---|---|---|---|
| basic | 1-2s | Good | Quick facts, simple queries |
| advanced | 5-10s | Excellent | Research, complex topics, comprehensive analysis |
Decision tree:
basicadvancedadvancedbasic| Topic | Time Range | Sources | Use Case |
|---|---|---|---|
| general | All time | Broad web | Evergreen content, tutorials, documentation |
| news | Last 7 days | News sites | Current events, recent developments, breaking news |
Decision tree:
newsgeneralnewsAdd to your Clawdbot config:
{
"skills": {
"entries": {
"tavily": {
"enabled": true,
"apiKey": "tvly-YOUR_API_KEY_HERE"
}
}
}
}
Access in scripts via Clawdbot's config system.
export TAVILY_API_KEY="tvly-YOUR_API_KEY_HERE"
Add to ~/.clawdbot/.env or your shell profile.
tvly-)# Comprehensive research with answer
scripts/tavily_search.py "Explain quantum entanglement" --depth advanced
# Multiple authoritative sources
scripts/tavily_search.py "Best practices for REST API design" \
--max-results 10 \
--include-domains github.com microsoft.com google.com
# Latest news
scripts/tavily_search.py "AI policy updates" --topic news
# Recent developments in a field
scripts/tavily_search.py "quantum computing breakthroughs" \
--topic news \
--depth advanced
# Academic sources only
scripts/tavily_search.py "machine learning algorithms" \
--include-domains arxiv.org scholar.google.com ieee.org
# Technical documentation
scripts/tavily_search.py "React hooks guide" \
--include-domains react.dev
# Gather visual references
scripts/tavily_search.py "modern web design trends" \
--images \
--max-results 10
# Get raw HTML content for deeper analysis
scripts/tavily_search.py "Python async/await" \
--raw-content \
--max-results 5
The AI-generated answer provides a concise summary synthesized from search results:
{
"answer": "Quantum computing is a type of computing that uses quantum-mechanical phenomena..."
}
Use when:
Skip when (--no-answer):
Each result includes:
title: Page titleurl: Source URLcontent: Extracted text snippetscore: Relevance score (0-1)raw_content: Full HTML (if --raw-content enabled)When --images is enabled, returns URLs of relevant images found during search.
basic for most queries (faster, cheaper)advanced only when:
Include domains for:
.edu domains)Exclude domains for:
basic depth as defaultmax_results to what you'll actually useinclude_raw_content unless neededThe script provides helpful error messages:
# Missing API key
Error: Tavily API key required
Setup: Set TAVILY_API_KEY environment variable or pass --api-key
# Package not installed
Error: tavily-python package not installed
To install: pip install tavily-python
from tavily_search import search
result = search(
query="What is machine learning?",
api_key="tvly-...",
search_depth="advanced",
max_results=10
)
if result.get("success"):
print(result["answer"])
for item in result["results"]:
print(f"{item['title']}: {item['url']}")
scripts/tavily_search.py "Python tutorials" --json > results.json
# Search and extract content
scripts/tavily_search.py "React documentation" --json | \
jq -r '.results[].url' | \
xargs -I {} curl -s {}
vs Brave Search:
vs Perplexity:
vs Google Custom Search:
# Make executable
chmod +x scripts/tavily_search.py
# Check Python version (requires 3.6+)
python3 --version
# Install dependencies
pip install tavily-python
# Verify API key format (should start with tvly-)
echo $TAVILY_API_KEY
# Test with explicit key
scripts/tavily_search.py "test" --api-key "tvly-..."
max_results to conserve creditsbasic depth instead of advancedSee api-reference.md for:
tavily-python package (install: pip install tavily-python)