Skip to content
Back to skills

X Reader

ASecurity

Read Twitter/X posts, threads, and articles. Handles login walls and JS rendering. Use when a user shares an x.com or twitter.com link.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added August 31, 2026
ai-agentsgobashnodeapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned August 31, 2026

npx -y skills add Yesterday-AI/skills --skill x-reader --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of X Reader?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for X Reader
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/yesterday-ai-x-reader/badge)](https://www.skillsdirectory.com/skills/yesterday-ai-x-reader)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: x-reader
description: Read Twitter/X posts, threads, and articles. Handles login walls and JS rendering. Use when a user shares an x.com or twitter.com link.
metadata:
  category: research
  author: ManniTheRaccoon, Robby
  version: "1.2"
compatibility: Requires Node.js 18+. Uses web-scraper skill for Playwright rendering or fxtwitter API for speed.
---

# X-Reader

Read any Twitter/X content -- tweets, threads, and long-form articles.

## Strategy

```
X/Twitter URL received?
├── Simple tweet or Article → fxtwitter API (fast, free, no login-wall):
│   web_fetch "https://api.fxtwitter.com/<user>/status/<id>"
│   (For Articles: Check tweet.article.content.blocks[] for Draft.js content)
│
├── Medium Article → web_fetch (direct) or Freedium (fallback):
│   web_fetch "https://medium.com/<url>"
│   If teaser only: web_fetch "https://freedium.cfd/medium.com/<url>"
│
├── Thread (Full) → Playwright (via web-scraper):
│   node skills/web-scraper/scripts/scrape.js "<url>" --wait 5000
│
└── All methods fail → Ask user to paste or screenshot
```

## Methods

### 1. fxtwitter API (Speed & Efficiency)
Best for single tweets and X Articles. No API key needed.
- **Normal Tweets:** Use `tweet.text`, `tweet.author.name`, etc.
- **X Articles:** Look into `tweet.article.content.blocks[]`. Map `header-two` to `##` and `unstyled` to paragraph.

### 2. oEmbed API (Legacy fallback)
```bash
web_fetch "https://publish.twitter.com/oembed?url=https://x.com/user/status/123"
```

### 3. Medium (Client-side Paywall bypass)
Medium paywalls are often client-side JS only. Raw `web_fetch` often gets the full HTML.
- **Fallback (Freedium):** Rewrite `medium.com` to `freedium.cfd/medium.com`.

### 4. Playwright (Reliability fallback)
For complex threads or when API methods fail.
```bash
node skills/web-scraper/scripts/scrape.js "<url>" --wait 5000
```

## URL Detection

Recognize X/Twitter/Medium links:
- `https://x.com/<user>/status/<id>`
- `https://twitter.com/<user>/status/<id>`
- `https://x.com/i/article/<id>`
- `https://medium.com/<author>/<article-slug>`

## Depends On

- [web-scraper](../web-scraper/SKILL.md) -- Playwright rendering engine

---

*Authored by ManniTheRaccoon & Robby. Merged by Yessy 🐾 2026-03-03.*

Files in this skill

  • SKILL.md2.2 KB
  • read-x.js1.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.