a2a-multi-agent
Runs XActions as an A2A (Agent-to-Agent) compatible agent that serves an Agent Card, accepts JSON-RPC tasks, bridges them onto the 153 MCP tools, streams…
Scrapes X/Twitter data without API access using Puppeteer stealth and browser console scripts. Extracts profiles, followers, following lists, tweets, search results, hashtags, threads, media, bookmarks, notifications, DMs, likes, and viral tweets. Exports to JSON/CSV. Use when
$ npx -y skills add nirholas/XActions --skill twitter-scraping --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/twitter-scrapingContext preview
The summary Claude sees to decide when to auto-load this skill.
Scrapes X/Twitter data without API access using Puppeteer stealth and browser console scripts. Extracts profiles, followers, following lists, tweets, search results, hashtags, threads, media, bookmarks, notifications, DMs, likes, and viral tweets. Exports to JSON/CSV. Use when
name: twitter-scraping description: Scrapes X/Twitter data without API access using Puppeteer stealth and browser console scripts. Extracts profiles, followers, following lists, tweets, search results, hashtags, threads, media, bookmarks, notifications, DMs, likes, and viral tweets. Exports to JSON/CSV. Use when collecting, exporting, or analyzing Twitter data. license: Apache-2.0 metadata: author: nichxbt version: "4.0"
All scrapers require an `auth_token` cookie from x.com (DevTools -> Application -> Cookies -> copy `auth_token` value).
`npm install xactions` -- all functions from `src/scrapers/index.js`.
import { createBrowser, createPage, loginWithCookie, scrapeProfile } from 'xactions';
const browser = await createBrowser();
const page = await createPage(browser);
await loginWithCookie(page, AUTH_TOKEN);
const profile = await scrapeProfile(page, 'nichxbt');
await browser.close();| Function | Purpose | |----------|---------| | `scrapeProfile(page, username)` | Profile data (bio, followers, following) | | `scrapeFollowers(page, username, {limit})` | Follower list | | `scrapeFollowing(page, username, {limit})` | Following list | | `scrapeTweets(page, username, {limit})` | User's tweets | | `searchTweets(page, query, {limit})` | Search results | | `scrapeHashtag(page, tag, {limit})` | Hashtag tweets | | `scrapeThread(page, tweetUrl)` | Thread tweets | | `scrapeMedia(page, username, {limit})` | Media URLs | | `exportToJSON(data, path)` / `exportToCSV(data, path)` | File export |
Standalone IIFEs -- paste into DevTools console on x.com. No dependencies.
| Script | File | Navigate to | |--------|------|-------------| | Download video | `src/scrapers/videoDownloader.js` | Tweet with video | | Export bookmarks | `src/scrapers/bookmarkExporter.js` | `x.com/i/bookmarks` | | Unroll thread | `src/scrapers/threadUnroller.js` | Any thread | | Find viral tweets | `src/scrapers/viralTweets.js` | User profile | | Scrape followers | `scripts/scrapeFollowers.js` | `x.com/USER/followers` | | Scrape following | `scripts/scrapeFollowing.js` | `x.com/USER/following` | | Scrape profile | `scripts/scrapeProfile.js` | User profile | | Scrape search | `scripts/scrapeSearch.js` | Search results | | Scrape hashtag | `scripts/scrapeHashtag.js` | `x.com/hashtag/TAG` | | Scrape likes | `scripts/scrapeLikes.js` | `x.com/USER/likes` | | Scrape likers | `scripts/scrapeLikers.js` | Any tweet | | Scrape replies | `scripts/scrapeReplies.js` | Any tweet | | Scrape media | `scripts/scrapeMedia.js` | User media tab | | Scrape DMs | `scripts/scrapeDMs.js` | `x.com/messages` | | Scrape notifications | `scripts/scrapeNotifications.js` | `x.com/notifications` | | Scrape list | `scripts/scrapeList.js` | Any X List | | Scrape bookmarks | `scripts/scrapeBookmarks.js` | `x.com/i/bookmarks` | | Export to CSV | `scripts/exportToCSV.js` | After any scrape | | Link scraper | `scripts/linkScraper.js` | Any timeline | | Quote retweets | `scripts/scrapeQuoteRetweets.js` | Any tweet |
For paste-in-console scraping, prefer `scripts/twitter/scraper-toolbox.js`: an on-page control panel (start/pause/stop, live filters, user exclusions, keyword rules) that captures X's own GraphQL responses, so counts are exact integers and long posts are untruncated. Exports JSON/CSV/Markdown/TXT/HTML and copies to clipboard. Works on any timeline: profile, search, list, likes, bookmarks, home. Docs: `scripts/twitter/README-scraper-toolbox.md`.
All scrapers available via the MCP server for AI agents:
| Tool | Description | |------|-------------| | `x_get_profile` | Scrape user profile | | `x_get_followers` | Get follower list | | `x_get_following` | Get following list | | `x_get_tweets` | Get user tweets | | `x_search_tweets` | Search tweets | | `x_get_thread` | Unroll thread | | `x_download_video` | Extract video URL |
⚡ The Complete X/Twitter Automation Toolkit — Scrapers, MCP server for AI agents (Claude/GPT), CLI, browser scripts. No API fees. Open source. Unfollow people who don't follow back. Monitor real-time analytics. Auto follow, like, comment, scrape, without API. Follow Bot. Like bot. Grow your account automatically.
Repo: nirholas/XActions
Runs XActions as an A2A (Agent-to-Agent) compatible agent that serves an Agent Card, accepts JSON-RPC tasks, bridges them onto the 153 MCP tools, streams…
Export and backup your X/Twitter account data — tweets, likes, bookmarks, followers, and following — as downloadable JSON. Also triggers X's official data…
Miscellaneous account utilities — view join date, login history, connected accounts, appeal suspension, QR code sharing, share/embed tweets, upload contacts,…
Trains an X/Twitter account's algorithmic feed to surface niche-relevant content and positions the account as a thought leader. Browser scripts for manual…
Analyze X/Twitter engagement, hashtags, competitors, best posting times, follower demographics, tweet performance, viral detection, content calendar gaps, A/B…
Compose, preview, publish, and manage long-form Articles on X/Twitter. Premium+ feature. Includes article creation, formatting, media insertion, and…