Install
openclaw skills install felo-x-searchSearch X (Twitter) data using Felo X Search API. Use when users ask about X/Twitter users, tweets, trending topics on X, tweet replies, or when explicit comm...
openclaw skills install felo-x-searchTrigger this skill when the user wants to:
Trigger keywords (examples):
Explicit commands: /felo-x-search, "search X", "search twitter"
Do NOT use for:
felo-search)felo-web-extract)felo-slides)Linux/macOS:
export FELO_API_KEY="your-api-key-here"
Windows PowerShell:
$env:FELO_API_KEY="your-api-key-here"
Packaged CLI (after npm install -g felo-ai):
felo x [query] [options]
Script (from repo):
node felo-x-search/scripts/run_x_search.mjs [query] [options]
The x command uses parameter combinations to infer intent — no subcommands needed.
With query (search mode):
| Usage | Behavior |
|---|---|
felo x "AI news" | Search tweets (default) |
felo x -q "AI news" | Same as above |
felo x "OpenAI" --user | Search users |
With --id (lookup mode):
| Usage | Behavior |
|---|---|
felo x --id "1234567890" | Get tweet replies (default) |
felo x --id "elonmusk" --user | Get user info |
felo x --id "elonmusk" --user --tweets | Get user tweets |
| Option | Description |
|---|---|
[query] | Positional arg, search keyword (equivalent to -q) |
-q, --query <text> | Search keyword |
--id <values> | Tweet IDs or usernames (comma-separated) |
--user | Switch to user mode |
--tweets | Get user tweets (with --id --user) |
-l, --limit <n> | Number of results |
--cursor <str> | Pagination cursor |
--include-replies | Include replies (with --tweets) |
--query-type <type> | Query type filter (tweet search) |
--since-time <val> | Start time filter |
--until-time <val> | End time filter |
-j, --json | Output raw JSON |
-t, --timeout <seconds> | Timeout in seconds (default: 30) |
# Search tweets
curl -X POST "https://openapi.felo.ai/v2/x/tweet/search" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "AI news", "limit": 20}'
# Search users
curl -X POST "https://openapi.felo.ai/v2/x/user/search" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "artificial intelligence"}'
# Get user info
curl -X POST "https://openapi.felo.ai/v2/x/user/info" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"usernames": ["elonmusk", "OpenAI"]}'
# Get user tweets
curl -X POST "https://openapi.felo.ai/v2/x/user/tweets" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username": "elonmusk", "limit": 20}'
# Get tweet replies
curl -X POST "https://openapi.felo.ai/v2/x/tweet/replies" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"tweet_ids": ["1234567890"]}'
## @elonmusk (Elon Musk 🔵)
- User ID: `44196397`
- Followers: 100.0M
- Following: 500
- Total Tweets: 30.0K
- Bio: ...
- Location: Mars
- Account Created: 2009-06-02T00:00:00Z
---
### @elonmusk(Elon Musk ✓)
- Posted: 2026-03-09T12:00:00Z | Tweet ID: `1234567890`
Tweet content here...
Engagement: 5.0K likes | 1.0K retweets | 200 replies
---
INVALID_API_KEY — API Key is invalid or revokedX_SEARCH_FAILED — X search request failed (check parameters or downstream error)If FELO_API_KEY is not set, display setup instructions and stop.
https://openapi.felo.ai. Override with FELO_API_BASE env if needed.Authorization: Bearer YOUR_API_KEYPOST /v2/x/user/info — Batch get user profilesPOST /v2/x/user/search — Search usersPOST /v2/x/user/tweets — Get user tweetsPOST /v2/x/tweet/search — Search tweetsPOST /v2/x/tweet/replies — Get tweet repliesFELO_API_KEY before calling; if missing, return setup instructions.--json for raw API response.next_cursor) for fetching more results.