Social Fetch
When you or another skill needs to fetch the content of a social media post by URL, ...
Install
npx skills add coreyhaines31/makerskills --skill social-fetch -g -a claude-code -y- Repository
- coreyhaines31/makerskills880
- Category
- AI and agents
- Updated
- 9d ago
- License
- MIT
- Context cost
- Mediumabout 1,624 tokens
- Runs scripts
- No, instructions only
What it does
When you or another skill needs to fetch the content of a social media post by URL, tweet, X thread, LinkedIn post, Instagram post, TikTok video, Bluesky post, Reddit thread, Mastodon status, Threads post, Hacker News thread. Returns normalized structured data (author, posted_at, text, engagement counts, media URLs, replies if requested) regardless of platform. Tries strategies in order: direct API (Bluesky, Mastodon, HN, Reddit), agent-browser with modal dismissal (LinkedIn, X preview), Wayback Machine (older posts), paid APIs (ScrapeCreators / Apify, only if env keys present). Triggers on \"/social-fetch <url>,\" \"fetch this tweet,\" \"fetch this post,\" \"what does this LinkedIn say,\" \"read this thread,\" \"pull this post.\" For what's said inside a video, use watch-video. Used by deep-research (citing specific posts), jab-hook (inspiration account analysis), business-brainstorm (competitor / operator commentary).
/social-fetch, Pull any social post by URL
Normalized fetcher for social posts across platforms. Detects platform from URL, tries strategies in order, returns the same JSON shape regardless of source.
Step 1, Detect platform
| URL pattern | Platform |
|---|---|
x.com/<user>/status/<id> or twitter.com/<user>/status/<id> | x (Twitter) |
linkedin.com/posts/<slug> or linkedin.com/feed/update/urn:li:activity:<id> | |
linkedin.com/in/<handle> (profile, recent activity) | linkedin-profile |
instagram.com/p/<id> or instagram.com/reel/<id> | |
tiktok.com/@<user>/video/<id> | tiktok |
bsky.app/profile/<handle>/post/<rkey> | bluesky |
reddit.com/r/<sub>/comments/<id>/... | |
<mastodon-instance>/@<user>/<id> (e.g. mastodon.social, hachyderm.io) | mastodon |
threads.net/@<user>/post/<id> | threads |
news.ycombinator.com/item?id=<id> | hn |
youtube.com/watch?v=<id> or youtu.be/<id> | → defer to watch-video |
If the URL doesn't match any pattern, ask the user what platform it is.
Step 2, Pick strategy chain
Read references/strategies.md for the per-platform strategy chain. Each platform has 2, 5 strategies tried in order.
Key principles:
- Free strategies first (direct APIs, agent-browser)
- Paid only as fallback (ScrapeCreators / Apify), and only if the env key is set
- Bluesky / Mastodon / HN / Reddit are free + reliable (public APIs)
- X / LinkedIn / Instagram / TikTok / Threads need paid or scraping fallback for full data
Step 3, Execute strategy
For each strategy in the chain:
- Try it
- If success: parse → normalize → return
- If failure (404, 402, auth wall, empty response): note the failure and try the next strategy

