Claude Skill

Twitter / X Profile Post Scraper

Pulls a user's recent tweets and profile data into a markdown, CSV, or Excel. For voice cloning or research.

The Twitter / X Profile Post Scraper is a Claude skill that turns any X handle into a swipe file of their recent tweets, scored by what actually got engagement. Hand it a handle. Get the file in seconds.

The Problem

You want to study how someone writes on X. Maybe it's the founder whose voice you're modeling for your own content. Maybe it's a competitor whose content engine you're trying to reverse-engineer. Either way, the work starts on x.com.

You go to their profile and scroll. You see a banger from three weeks back and screenshot it. You scroll more. Another good one. You open a Google Doc, paste a URL, copy the tweet text, paste it again. Twenty tweets in, your shoulders hurt and you've lost track of which ones already made it into the doc. The timeline mixes originals, replies, and reposts together. Like counts are tiny.

An hour later you've got maybe 30 tweets in a messy doc and no real sense of which performed. You don't have dates. The engagement numbers never made it across. Next month when you do this for a different account, you do the whole thing over.

This skill fixes that. Hand Claude a handle. Get every recent tweet, sorted and scored.

What this Claude skill does

  • Pulls up to 100+ recent tweets per handle: pages through the X timeline via cursor, dedupes by tweet ID, and stops cleanly when the timeline runs out.
  • Outputs markdown, CSV, or Excel: swipe-file markdown for scanning, CSV for piping into other tools, XLSX with a separate Profile sheet for spreadsheet work.
  • Scores every tweet by engagement: weighted formula (favorites + replies×3 + retweets×2 + quotes×2), normalized so the top tweet in the run = 10.0. Bangers and duds separate cleanly.
  • Accepts any handle shape: bare elonmusk, @elonmusk, https://x.com/elonmusk, or even a tweet URL. The script extracts the handle from all of them.
  • Captures profile metadata: display name, follower count, following count, and a last-fetched timestamp, written into the file so the snapshot is self-describing.

Why it's amazing!

  • Build a swipe file of 100+ tweets in 30 seconds instead of an afternoon.
  • See which tweets actually landed without squinting at like counts.
  • Re-run on any handle later with one prompt. No manual screenshotting ever again.
  • Get the data in the format you'll actually work in.

Who it's for

Anyone studying how someone posts on X. Founders modeling a voice for their own content, marketers tearing down a competitor's content engine, ICP researchers validating an angle has pull, podcast hosts prepping for a guest interview, and writers building swipe files of tweets that converted in their niche.

How it works

Ask Claude something like:

  • "Get the tweets from x.com/AlexHormozi"
  • "Pull 200 tweets from @naval as a CSV"
  • "Scrape @levelsio and @dvassallo so I can study their cadence"
  • "Grab Mads' last 100 tweets and rank them by engagement"
  • "I'm writing in the voice of a solo founder — pull tweets from @hormozi and tell me which 5 hit hardest"
  • "Get me an Excel file of @paulg's recent posts with the engagement column visible"

You'll get a file like:

---
channel: x-twitter
handle: AlexHormozi
url: https://x.com/AlexHormozi
last_fetched: 2026-05-22T16:11:52+00:00
name: Alex Hormozi
followers: 1432109
---

# @AlexHormozi — Swipe File

| Date | Tweet | Likes | Retweets | Replies | Link |
| --- | --- | --- | --- | --- | --- |
| 2026-05-22 | The fastest way to grow is to stop trying to grow fast. | 12,400 | 1,890 | 312 | [link](...) |
| 2026-05-20 | Most people don't fail because of a bad plan. They fail because... | 8,200 | 1,201 | 198 | [link](...) |
| 2026-05-18 | Three things I wish I knew at 25 about money. A thread. | 6,540 | 980 | 412 | [link](...) |
| 2026-05-15 | If your offer doesn't sell itself, it isn't an offer. It's a hope. | 5,210 | 720 | 156 | [link](...) |
| 2026-05-12 | Hiring rule we use: never hire a manager before you've done the job yourself. | 3,800 | 540 | 89 | [link](...) |
| ...

The terminal summary prints the top 3 by engagement so you can eyeball the bangers before opening the file. Switch to CSV or Excel for sortable columns and a dedicated Profile sheet.

Pairs well with these other skills

This scraper gets you the scored swipe file — these skills turn it into a voice you can write in and research you can act on:

  • Voice Cloner Skill: Feed the swipe file in to distill the handle's tone, hooks, and rhythm into a reusable voice profile.
  • Twitter X Post Writer Skill: Write new tweets in the voice you just studied, modeled on what actually performed.
  • People OSINT Researcher Skill: Background the person behind the handle for the full picture, not just their timeline.
  • ICP Generator Skill: Use the top-performing tweets to validate that an angle has real pull with your audience.

FAQ

What output formats can I get?

Three. Markdown (the default) gives you a clean swipe file with a scored table you can scan or paste anywhere. CSV gives you sortable columns for piping into other tools or your own scripts. XLSX (Excel) gives you a spreadsheet with a dedicated Profile sheet alongside the tweets. Just ask for the one you want, like "pull @naval as a CSV" or "get me an Excel file of @paulg's posts."

Does it cost anything to run?

Depends how heavy you use it. It uses a third party API service which has a generous free tier (good for light use) and paid plans for heavier scraping. Just sign up and add your API key and that's it.

How accurate is it?

It returns whatever the X API exposes. Likes, retweets, replies, quotes, and views come straight from the response. The engagement score is a normalized rank for comparing tweets in the same run, not a real X metric for cross-run comparisons.

Can it pull every tweet ever, going back years?

No. The API only returns the recent window (a few hundred tweets, give or take). For deep historical archives you'd need X's premium API or a different tool. This skill gives you the snapshot, not the archive.

Does it work on private or suspended accounts?

No. Private, suspended, brand-new, or shadow-limited accounts return an empty timeline. Confirm the handle is publicly viewable on x.com first.

Can it grab replies, search results, or follower lists?

Not yet. The script is wired for timelines only. The API service exposes more endpoints (search, replies, followers, lists) and the codebase is set up to plug them in. Today, just timelines.

How many tweets can I get per run?

Default is 100. You can ask for more. The script pages through up to 30 pages (about 600 tweets) before stopping, whichever comes first.

Does it remember what I scraped before?

No. Each run overwrites the file. If you want a longitudinal view, rename or move the file before re-running.

Safe To Install

Please read before installing. Any skill you copy online is someone else's code running inside your Claude, and a lot of what's out there should give you pause. Most authors who give skills away don't give a second thought to quality or security. Most are vibe-coded slop pushed out untested, and some are the occasional bad actor hiding an exploit in plain sight. (Read about OpenClaws ClawHub security nightmare). Every skill we publish is vetted by a programmer with 20+ years of professional experience and checked line by line for anything that touches your files without reason. With Stim-Pack Studios Claude Skills, you get peace of mind knowing you're installing safe, vetted code, not a stranger's guess.

Add it to your Claude workflow

If you spend time studying how other people post on X or want to model their style, then this is your Claude skill.

Get the Twitter / X Profile Post Scraper Claude skill and turn any handle into a sorted, scored swipe file in seconds.