xai-search
Search X/Twitter and the web in real-time using xAI's Grok API with agentic search tools.
Installation
npx clawhub@latest install xai-searchView the full skill documentation and source below.
Documentation
xAI Search (Grok API)
Use xAI's agentic search to query X/Twitter and the web in real-time. This leverages Grok's web_search and x_search tools.
Docs:
Requirements
XAI_API_KEYenvironment variable- Python 3 + xai-sdk:
pip install xai-sdk
Quick Usage (curl)
Web Search
curl -s \
-H "Authorization: Bearer $XAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-3-fast",
"messages": [{"role": "user", "content": "YOUR QUERY HERE"}],
"tools": [{"type": "function", "function": {"name": "web_search"}}]
}' | jq -r '.choices[0].message.content'
X/Twitter Search
curl -s \
-H "Authorization: Bearer $XAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-3-fast",
"messages": [{"role": "user", "content": "YOUR QUERY HERE"}],
"tools": [{"type": "function", "function": {"name": "x_search"}}]
}' | jq -r '.choices[0].message.content'
Combined (Web + X)
curl -s \
-H "Authorization: Bearer $XAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-3-fast",
"messages": [{"role": "user", "content": "YOUR QUERY HERE"}],
"tools": [
{"type": "function", "function": {"name": "web_search"}},
{"type": "function", "function": {"name": "x_search"}}
]
}' | jq -r '.choices[0].message.content'
Helper Script
For convenience, use the xai-search.py script in the scripts/ folder:
# Web search (adjust path to your skill location)
python ~/.clawdbot/skills/xai-search/scripts/xai-search.py web "latest news about AI"
# X/Twitter search
python ~/.clawdbot/skills/xai-search/scripts/xai-search.py x "what are people saying about Clawdbot"
# Both
python ~/.clawdbot/skills/xai-search/scripts/xai-search.py both "current events today"
Models
grok-3-fast— fast, good for quick searchesgrok-4-1-fast— reasoning model, better for complex queries
X Search Filters
You can filter X searches by:
allowed_x_handles/excluded_x_handles— limit to specific accountsfrom_date/to_date— date range (ISO8601 format)enable_image_understanding— analyze images in postsenable_video_understanding— analyze videos in posts
Web Search Filters
allowed_domains/excluded_domains— limit to specific sitesenable_image_understanding— analyze images on pages
Tips
- For breaking news: use X search
- For factual/research queries: use web search or both
- For sentiment/opinions: use X search
- The model will make multiple search calls if needed (agentic)