home / skills / openclaw / skills / search-x
This skill enables real-time X/Twitter search with xAI Grok or X API, returning tweets, trends, and citations for quick insights.
npx playbooks add skill openclaw/skills --skill search-xReview the files below or copy the command above to add this skill to your agents.
---
name: search-x
description: Search X/Twitter in real-time using Grok or X API. Find tweets, trends, and discussions with citations.
homepage: https://docs.x.ai
user-invocable: true
disable-model-invocation: true
triggers:
- search x
- search twitter
- find tweets
- what's on x about
- x search
- twitter search
metadata:
clawdbot:
emoji: "🔍"
primaryEnv: XAI_API_KEY
requires:
bins: [node]
env: [XAI_API_KEY]
---
# Search X
Real-time X/Twitter search with two modes:
1. **xAI Grok** (default) — AI-powered search with x_search tool, up to 30 days
2. **X API** (`--x-api`) — Native X search, up to 7 days, pay-per-use
## Setup
### Option 1: xAI API (default)
```bash
export XAI_API_KEY="xai-YOUR-KEY"
```
Get your key at: https://console.x.ai
### Option 2: X API (native)
```bash
export X_BEARER_TOKEN="YOUR-BEARER-TOKEN"
```
Get your token at: https://console.x.com
**Note:** X API uses pay-per-usage pricing. No subscription needed.
## Commands
### Basic Search (xAI Grok)
```bash
node {baseDir}/scripts/search.js "AI video editing"
```
### Native X API Search
```bash
node {baseDir}/scripts/search.js --x-api "AI video editing"
node {baseDir}/scripts/search.js --x-api --max 50 "trending topic" # More results
```
### Filter by Time
```bash
node {baseDir}/scripts/search.js --days 7 "breaking news"
node {baseDir}/scripts/search.js --days 1 "trending today"
node {baseDir}/scripts/search.js --x-api --days 7 "news" # X API max is 7 days
```
### Filter by Handles
```bash
node {baseDir}/scripts/search.js --handles @elonmusk,@OpenAI "AI announcements"
node {baseDir}/scripts/search.js --exclude @bots "real discussions"
```
### Output Options
```bash
node {baseDir}/scripts/search.js --json "topic" # Full JSON response
node {baseDir}/scripts/search.js --compact "topic" # Just tweets, no fluff
node {baseDir}/scripts/search.js --links-only "topic" # Just X links
```
## Example Usage in Chat
**User:** "Search X for what people are saying about Claude Code"
**Action:** Run search with query "Claude Code"
**User:** "Find tweets from @remotion_dev in the last week"
**Action:** Run search with --handles @remotion_dev --days 7
**User:** "What's trending about AI on Twitter today?"
**Action:** Run search with --days 1 "AI trending"
**User:** "Search X for Remotion best practices, last 30 days"
**Action:** Run search with --days 30 "Remotion best practices"
## How It Works
### xAI Grok Mode (default)
Uses xAI's Responses API (`/v1/responses`) with the `x_search` tool:
- Model: `grok-4-1-fast` (optimized for agentic search)
- Up to 30 days of history
- AI-powered result formatting with citations
- Returns real tweets with URLs
### X API Mode (--x-api)
Uses X's native search API (`/2/tweets/search/recent`):
- Up to 7 days of history
- Pay-per-usage pricing (no subscription)
- Raw tweet data with metrics
- Up to 100 results per query
## Response Format
Each result includes:
- **@username** (display name)
- Tweet content
- Date/time
- Engagement metrics (X API mode)
- Direct link to tweet
## Environment Variables
**xAI Mode:**
- `XAI_API_KEY` - Your xAI API key (required for default mode)
- `SEARCH_X_MODEL` - Model override (default: grok-4-1-fast)
- `SEARCH_X_DAYS` - Default days to search (default: 30)
**X API Mode:**
- `X_BEARER_TOKEN` - Your X API Bearer Token
- `TWITTER_BEARER_TOKEN` - Alternative env var name
## Security & Permissions
**What this skill does:**
- Calls xAI's `/v1/responses` endpoint (Grok mode) or X's `/2/tweets/search/recent` endpoint (X API mode)
- Returns public tweet data with URLs and citations
- All requests go only to `api.x.ai` or `api.x.com`
**What this skill does NOT do:**
- Does not post, like, retweet, or modify any X/Twitter content
- Does not access your X/Twitter account or DMs
- Does not read config files or access the local filesystem
- Does not send credentials to any third-party endpoint
- Cannot be invoked autonomously by the agent (`disable-model-invocation: true`)
Review `scripts/search.js` before first use to verify behavior.
This skill provides real-time search of X (Twitter) using either xAI Grok or the native X API, returning tweets, trends, and discussion threads with citations and direct links. It supports flexible filters (time range, handles, include/exclude) and multiple output formats (JSON, compact, links-only). The default mode uses xAI Grok for up-to-30-day searches; an optional X API mode provides native results up to 7 days with pay-per-use pricing.
By default the skill calls xAI's Responses API with the x_search tool and a grok model to perform up-to-30-day, AI-powered searches that include formatted results and source URLs. An optional --x-api flag switches to X's recent search endpoint, returning raw tweet data, metrics, and up-to-7-day history. Queries support filters for days, handles, exclusions, and result limits, and responses include username, content, timestamp, metrics (X API), and direct tweet links.
Do I need an API key to use the default mode?
Yes. The default Grok mode requires an xAI API key configured in the XAI_API_KEY environment variable.
What are the time limits for each mode?
Grok mode supports up to 30 days of history. X API mode supports up to 7 days per query.