x-reader

x-reader is a skill for Claude Code from Yesterday-AI/skills. It costs 33 tokens per session (627 once invoked), scanned A, original, MIT.

A tool for reading posts, conversation threads, and long-form articles on Twitter/X, including content that normally requires login or JavaScript.

In plain words
What is it for?
It is for reading shared x.com or twitter.com links, including individual posts, threads, X Articles, and Medium articles.
Why use it?
It gives an agent several ways to retrieve X content when a normal page request is blocked or incomplete.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is │ node skills/web-scraper/scripts/scrape.js "<url>" --wait 5000.

Part of the office plugin — 5 skills shipped together

Good fit It is for reading shared x.com or twitter.com links, including individual posts, threads, X Articles, and Medium articles.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/Yesterday-AI/skills
agentmods
npx agentmods add skills/yesterday-ai/skills/x-reader

Made for: Claude Code.

Or install office, the plugin that ships this one along with the rest of its 5 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for x-reader

README.md
[![agentmods](https://agentmods.dev/badge/skills/yesterday-ai/skills/x-reader/github.svg)](https://agentmods.dev/skills/yesterday-ai/skills/x-reader)
Your own site
<a href="https://agentmods.dev/skills/yesterday-ai/skills/x-reader"><img src="https://agentmods.dev/badge/skills/yesterday-ai/skills/x-reader/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for x-reader

Your own site · 80×15
<a href="https://agentmods.dev/skills/yesterday-ai/skills/x-reader"><img src="https://agentmods.dev/badge/skills/yesterday-ai/skills/x-reader.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 33 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 627 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00033 $0.00627
Opus 5.5 $0.00013 $0.00251
Sonnet 5.5 $0.00007 $0.00125
Haiku 4.5 $0.00003 $0.00063

Measured 2mo ago against content hash a07fd9f39bf7, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

x-reader scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.

The scan reads SKILL.md. This mod also ships 1 executable file (read-x.js), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/office/skills/x-reader/SKILL.md · 70 lines

What it actually says

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)

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.

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


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

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2mo ago First seen · 70 lines · 33 tokens per session scan A a07fd9f39bf7

Subscribe to this mod's changes

x-reader is a skill published in the GitHub repository Yesterday-AI/skills (2 stars, last pushed 1mo ago), licensed MIT. It adds 33 tokens to every session and 627 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

x-reader compared with skills from other repositories

x-reader next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
x-readerYesterday-AI/skillsSkill21mo agoMITA33Claude Code
render-3d-product-showcasegooseworks-ai/goose-skillsSkill1.3k6d agoMITA159Claude Code, Codex
render-airdrop-carouselgooseworks-ai/goose-skillsSkill1.3k6d agoMITA207Claude Code, Codex
email-lifecycle-flow-writergooseworks-ai/goose-skillsSkill1.3k6d agoMITA50Claude Code, Codex
work-with-creators-creator-vettinggooseworks-ai/goose-skillsSkill1.3k6d agoMITA110Claude Code, Codex
Accessibility Manual AuditPramodDutta/qaskillsSkill24810d agoMITA36Claude Code, Codex
loop-engineeringhuytieu/COG-second-brainSkill1.4k21d agoMITA63Claude Code