--- name: adhx description: "Fetch any X/Twitter post as clean LLM-friendly JSON. Converts x.com, twitter.com, or adhx.com links into structured data with full article content, author info, and engagement metrics. No scraping or browser required." risk: safe source: community date_added: "2026-03-25" --- # ADHX - X/Twitter Post Reader Fetch any X/Twitter post as structured JSON for analysis using the ADHX API. ## Overview ADHX provides a free API that returns clean JSON for any X post, including full long-form article content. This is far superior to scraping or browser-based approaches for LLM consumption. Works with regular tweets and full X Articles. ## When to Use This Skill - Use when a user shares an X/Twitter link and wants to read, analyze, or summarize the post - Use when you need structured data from an X/Twitter post (author, engagement, content) - Use when working with long-form X Articles that need full content extraction ## API Endpoint ``` https://adhx.com/api/share/tweet/{username}/{statusId} ``` ## URL Patterns Extract `username` and `statusId` from any of these URL formats: | Format | Example | |--------|---------| | `x.com/{user}/status/{id}` | `https://x.com/dgt10011/status/2020167690560647464` | | `twitter.com/{user}/status/{id}` | `https://twitter.com/dgt10011/status/2020167690560647464` | | `adhx.com/{user}/status/{id}` | `https://adhx.com/dgt10011/status/2020167690560647464` | ## Workflow When a user shares an X/Twitter link: 1. **Parse the URL** to extract `username` and `statusId` from the path segments 2. **Fetch the JSON** using curl: ```bash curl -s "https://adhx.com/api/share/tweet/{username}/{statusId}" ``` 3. **Use the structured response** to answer the user's question (summarize, analyze, extract key points, etc.) ## Response Schema ```json { "id": "statusId", "url": "original x.com URL", "text": "short-form tweet text (empty if article post)", "author": { "name": "Display Name", "username": "handle", "avatarUrl": "profile image URL" }, "createdAt": "timestamp", "engagement": { "replies": 0, "retweets": 0, "likes": 0, "views": 0 }, "article": { "title": "Article title (for long-form posts)", "previewText": "First ~200 chars", "coverImageUrl": "hero image URL", "content": "Full markdown content with images" } } ``` ## Installation ### Option A: Claude Code plugin marketplace (recommended) ``` /plugin marketplace add itsmemeworks/adhx ``` ### Option B: Manual install ```bash curl -sL https://raw.githubusercontent.com/itsmemeworks/adhx/main/skills/adhx/SKILL.md -o ~/.claude/skills/adhx/SKILL.md ``` ## Examples ### Example 1: Summarize a tweet User: "Summarize this post https://x.com/dgt10011/status/2020167690560647464" ```bash curl -s "https://adhx.com/api/share/tweet/dgt10011/2020167690560647464" ``` Then use the returned JSON to provide the summary. ### Example 2: Analyze engagement User: "How many likes did this tweet get? https://x.com/handle/status/123" 1. Parse URL: username = `handle`, statusId = `123` 2. Fetch: `curl -s "https://adhx.com/api/share/tweet/handle/123"` 3. Return the `engagement.likes` value from the response ## Best Practices - Always parse the full URL to extract username and statusId before calling the API - Check for the `article` field when the user wants full content (not just tweet text) - Use the `engagement` field when users ask about likes, retweets, or views - Don't attempt to scrape x.com directly - use this API instead ## Notes - No authentication required - Works with both short tweets and long-form X articles - Always prefer this over browser-based scraping for X content - If the API returns an error or empty response, inform the user the post may not be available ## Additional Resources - [ADHX GitHub Repository](https://github.com/itsmemeworks/adhx) - [ADHX Website](https://adhx.com) ## Limitations - Use this skill only when the task clearly matches the scope described above. - Do not treat the output as a substitute for environment-specific validation, testing, or expert review. - Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.