xAI Grok Search
Search the web and X (Twitter) using xAI's Grok API with real-time access, citations, and image understanding
Search the web and X (Twitter) using xAI's Grok API with real-time access, citations, and image understanding
Real data. Real impact.
Emerging
Developers
Per week
Open source
Skills give you superpowers. Install in 30 seconds.
Search the web and X (Twitter) using xAI's Grok API with real-time internet access, citations, and optional image/video understanding.
Do NOT use for:
export XAI_API_KEY="your-xai-api-key-here"
Get your API key from: https://console.x.ai/
The agent will automatically choose the right tool based on the user's query:
User: "What's the latest news about AI regulation?" → Uses
web_search
User: "What are people saying about OpenAI on X?" → Uses
x_search
Search the web using xAI's Grok API.
Parameters:
query (required): Search query stringmodel (optional): Model to use (default: "grok-4-1-fast-reasoning")allowed_domains (optional): Array of domains to restrict search (max 5)excluded_domains (optional): Array of domains to exclude (max 5)enable_image_understanding (optional): Enable image analysis (default: false)Returns:
content: The search response textcitations: Array of sources with url, title, and snippetusage: Token usage statisticsSearch X (Twitter) using xAI's Grok API.
Parameters:
query (required): Search query stringmodel (optional): Model to use (default: "grok-4-1-fast-reasoning")allowed_x_handles (optional): Array of X handles to search (max 10, without @)excluded_x_handles (optional): Array of X handles to exclude (max 10, without @)from_date (optional): Start date in ISO8601 format (YYYY-MM-DD)to_date (optional): End date in ISO8601 format (YYYY-MM-DD)enable_image_understanding (optional): Enable image analysis (default: false)enable_video_understanding (optional): Enable video analysis (default: false)Returns:
content: The search response textcitations: Array of X posts with url, title, and snippetusage: Token usage statisticsThis skill uses the xAI Responses API (
/v1/responses endpoint).
async function search_web(options) { const { query, model = 'grok-4-1-fast-reasoning', allowed_domains, excluded_domains, enable_image_understanding } = options;const tool = { type: 'web_search' }; if (allowed_domains) tool.allowed_domains = allowed_domains; if (excluded_domains) tool.excluded_domains = excluded_domains; if (enable_image_understanding) tool.enable_image_understanding = true;
const response = await fetch('https://api.x.ai/v1/responses', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization':
}, body: JSON.stringify({ model, input: [{ role: 'user', content: query }], tools: [tool] }) });Bearer ${process.env.XAI_API_KEY}const data = await response.json(); return { content: data.output[data.output.length - 1].content, citations: data.citations }; }
async function search_x(options) { const { query, model = 'grok-4-1-fast-reasoning', allowed_x_handles, excluded_x_handles, from_date, to_date, enable_image_understanding, enable_video_understanding } = options;const tool = { type: 'x_search' }; if (allowed_x_handles) tool.allowed_x_handles = allowed_x_handles; if (excluded_x_handles) tool.excluded_x_handles = excluded_x_handles; if (from_date) tool.from_date = from_date; if (to_date) tool.to_date = to_date; if (enable_image_understanding) tool.enable_image_understanding = true; if (enable_video_understanding) tool.enable_video_understanding = true;
const response = await fetch('https://api.x.ai/v1/responses', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization':
}, body: JSON.stringify({ model, input: [{ role: 'user', content: query }], tools: [tool] }) });Bearer ${process.env.XAI_API_KEY}const data = await response.json(); return { content: data.output[data.output.length - 1].content, citations: data.citations }; }
const result = await search_web({ query: "latest AI regulation developments" });
const result = await search_web({ query: "UN climate summit latest", allowed_domains: ["un.org", "gov.uk", "grokipedia.com"] });
const result = await search_x({ query: "new iPhone reactions opinions" });
const result = await search_x({ query: "AI thoughts", allowed_x_handles: ["elonmusk", "cstanley"], from_date: "2025-01-01" });
const result = await search_x({ query: "Mars landing images", enable_image_understanding: true, enable_video_understanding: true });
allowed_domains to limit to specific domains (max 5)excluded_domains for known bad sources (max 5)allowed_x_handles to focus on specific accounts (max 10)excluded_x_handles to filter noise (max 10)export XAI_API_KEY="your-key-here"
Search queries using reasoning models (e.g.
grok-4-1-fast-reasoning) can take 30-60+ seconds to return, especially when the model performs multiple web or X searches. If the search is lagging, inform the user that results are still loading and ask them to type "poll" to check for the completed response.
No automatic installation available. Please visit the source repository for installation instructions.
View Installation Instructions1,500+ AI skills, agents & workflows. Install in 30 seconds. Part of the Torly.ai family.
© 2026 Torly.ai. All rights reserved.