twitter

Read-only Twitter/X data lookup for tweets, users, followers, and engagement metrics. Nine tools cover tweet search with advanced operators, user profile lookups, follower/following lists, replies, retweets, and user discovery Supports advanced query syntax including keywords, from/to filters, hashtags, cashtags, engagement thresholds, date ranges, and media/link filters Cursor-based pagination for browsing large result sets across all endpoints Requires TWITTER_API_KEY environment variable; respects API rate limits

INSTALLATION
npx skills add https://github.com/starchild-ai-agent/official-skills --skill twitter
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

$2a

profile = twitter_user_info(username="vitalikbuterin")

print(json.dumps(profile, indent=2))

recent = twitter_user_tweets(username="vitalikbuterin")

print(f"got {len(recent.get('tweets', []))} tweets")

EOF

Tweet ID extraction from URL: the last path segment of any

`x.com/{user}/status/{id}` or `twitter.com/{user}/status/{id}` URL is the

tweet ID. Pass it as a string (Python int will lose precision on long IDs).

## Function Reference (signatures)

All 13 functions live in `exports.py`. Returns are dicts straight from

twitterapi.io — keys vary per endpoint, inspect once before scripting.

### Tweet endpoints

| Function | Description |

|---|---|

| `twitter_search_tweets(query, cursor=None)` | Advanced search. Operators: `from:user`, `to:user`, `#tag`, `$cashtag`, `lang:en`, `has:media`, `has:links`, `is:reply`, `min_faves:N`, `since:YYYY-MM-DD`, `until:YYYY-MM-DD`. |

| `twitter_get_tweets(tweet_ids)` | Fetch one or more tweets by ID. `tweet_ids` = list of strings (also accepts comma-string). |

| `twitter_tweet_replies(tweet_id, cursor=None)` | Replies to a tweet. |

| `twitter_tweet_retweeters(tweet_id, cursor=None)` | Users who retweeted. |

| `twitter_tweet_thread_context(tweet_id)` | Full thread context (parents + direct replies). |

| `twitter_tweet_quote(tweet_id, cursor=None)` | Quote tweets. |

| `twitter_get_article(tweet_id)` | Long-form X article body. |

| `twitter_get_trends(woeid=None, country=None, category=None, limit=None)` | Trending topics; all filters optional. |

### User endpoints

| Function | Description |

|---|---|

| `twitter_user_info(username)` | Profile: bio, follower/following counts, tweet count, verified. |

| `twitter_user_tweets(username, cursor=None)` | User's recent tweets. |

| `twitter_user_followers(username, cursor=None)` | Follower list. |

| `twitter_user_followings(username, cursor=None)` | Accounts followed. |

| `twitter_search_users(query, cursor=None)` | Search users by name/keyword. |

`username` is the handle WITHOUT `@` (e.g. `"elonmusk"`, not `"@elonmusk"`).

Pagination: when a response includes `next_cursor`, pass it back as `cursor`

on the next call.

## When to use this skill

- ANY `x.com/...` or `twitter.com/...` URL → start here, NOT `web_fetch`

  (Twitter blocks scrapers).

- Single tweet detail → `twitter_get_tweets([tweet_id])`.

- "What's @user been posting?" → `twitter_user_tweets`.

- KOL discovery / cashtag mentions → `twitter_search_tweets("$SOL min_faves:50")`.

- Trending topics → `twitter_get_trends`.

## Error handling

- `402 Credits is not enough` → upstream proxy credits exhausted; tell user

  to top up. Don't retry.

- `429` → rate limited; surface to user, don't auto-retry.

- `404 user not found` → suggest verifying the handle spelling.

## Version Policy (hard rule)

This skill is **script-mode** (`delivery: script`). It does NOT register

runtime tools — agent must `read_file` SKILL.md and call functions via

`bash` + `python3`. The legacy `tools.py` / `__init__.py` files are kept

for backward compatibility but are no longer the preferred entry point.

Bump rules:

- Any signature change, env-var change, or sc-proxy contract change → MAJOR

- New function added, response schema clarified → MINOR

- Bug fix or doc-only change → PATCH
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card