
`/last30days`: one command, 14 platforms, ranked by people not editors
`mvanhorn/last30days-skill` is GitHub Trending #1 today (28,635 stars, +441/day, v3.3.2) — an Agent Skill that fans out across 14 platforms in parallel, scores results by real engagement (upvotes, likes, Polymarket odds), and synthesizes a grounded brief via an AI judge. Covers install for Claude Code and 50+ agents, the free-vs-paid credential table, three usage examples, community reception, and five verified issues including the YouTube silent-drop bug and the X/Twitter CT0 cookie trap.

Research Brief
It's GitHub Trending #1 today with 28,635 stars and +441 stars/day. 1 Here's what the skill does, how to install it, and where it actually breaks.
What it does
/last30days is an Agent Skill (open-format, MIT license) by Matt Van Horn (@mvanhorn) that takes a topic query, searches 14 platforms in parallel, scores every result by real human engagement, and hands an AI judge the ranked evidence to synthesize a grounded brief. 1The 14 sources: Reddit, X/Twitter, YouTube, TikTok, Instagram Reels, Hacker News, Polymarket, GitHub, Digg, Threads, Pinterest, Bluesky, Perplexity Sonar, and web search.
The ranking signal is what separates it from a wrapper around a search API. Polymarket odds are backed by real money. Reddit results carry upvote counts on top comments. YouTube returns full 45-minute transcripts, not titles. As the README states:
"A Reddit thread with 1,500 upvotes is a stronger signal than a blog post nobody read. A TikTok with 3.6M views tells you more about what's culturally relevant than a press release." 1
No single AI reaches all 14 natively. Google doesn't touch Reddit comments or X posts. ChatGPT has a Reddit deal but no X or TikTok access. Gemini has YouTube but not Reddit. Claude has none of them by default. The skill bridges this by using your own API keys and browser sessions — you bring the credentials, the agent does the orchestration. 1
Loading content card…
Supported agents
The skill ships as an Agent Skills package installable across 50+ agent harnesses. 2 Confirmed hosts: Claude Code (primary), Codex, Cursor, GitHub Copilot, Gemini CLI, OpenClaw, Hermes, Windsurf, Cline, Continue, Roo, Aider Desk, and Goose.
One clarification from AGENTS.md that saves confusion: "This is an Agent Skills package, not a CLI tool. The product is the slash-command-invoked skill (
/last30days <topic> in most harnesses); scripts/last30days.py is implementation." 2 The host model — Claude, Gemini, GPT, whatever you're running — does the reasoning and synthesis. When you invoke /last30days from Claude Code, Codex, or Gemini, the host model is the reasoning provider. You don't need a separate AI API key for the synthesis layer. 3Install
Claude Code (recommended — auto-updates via marketplace):
/plugin marketplace add mvanhorn/last30days-skill
/plugin install last30daysUniversal (Codex, Cursor, Copilot, Gemini CLI, and 45+ others):
npx skills add mvanhorn/last30days-skill -gOther paths:
clawhub install last30days-official for OpenClaw; hermes skills install mvanhorn/last30days-skill --force for Hermes; or download last30days.skill from GitHub Releases and upload via claude.ai > Settings > Capabilities > Skills.First run triggers a 30-second setup wizard that detects your environment and walks through optional platform configuration. 4
What's free vs. what needs a key
| Source | What's required |
|---|---|
| Reddit (with comments) | Nothing — public JSON API |
| Hacker News | Nothing — Algolia API |
| Polymarket | Nothing — Gamma API |
| GitHub | gh CLI installed (your existing GitHub auth) |
| YouTube | brew install yt-dlp (free) |
| X/Twitter | Log into x.com in any browser, free via cookie auth |
| Bluesky | Free app password at bsky.app/settings/app-passwords |
| TikTok / Instagram / Threads | ScrapeCreators API key — 100 free credits, then PAYG |
| Web search | Brave Search API key — 2,000 free queries/month |
| Perplexity Sonar | OpenRouter key — PAYG |
macOS users can store keys in the system Keychain instead of a
.env file. Project-scoped .claude/last30days.env overrides global ~/.config/last30days/.env, so different projects can use different credential sets. 3Usage examples
Meeting prep:
/last30days Peter Steinberger. The skill resolves @steipete (X handle), steipete (GitHub), and relevant subreddits automatically, then surfaces his recent work across platforms — including a 22-PR streak at 85% merge rate and ongoing community debates — none of which appeared in a Google search, which returned his 2023 LinkedIn. As the README frames it: "You have a meeting tomorrow. You Google them. You get their LinkedIn from 2023. /last30days gives you what they're actually doing this month." 1Tool comparison: Hiten Shah (@hnshah, 304K followers) ran
/last30days Vercel agent-browser vs Playwright. A few minutes later: 78 Reddit posts, 76 tweets, 22 YouTube videos, 15 HN discussions — including data that agent-browser's context token consumption runs 82–93% lower than Playwright's (Playwright's tool definitions alone consume 13,700 tokens). He fed the full output to /ce:plan and noted the resulting plan was grounded in current community understanding, not training-data snapshots. 5Loading content card…
Prompt research:
/last30days Nano Banana Pro prompting returned community consensus that JSON-structured prompts are replacing tag soup, that @pictsbyai's nested format prevents "concept bleeding," and that edit-first workflows beat regeneration. The skill then wrote a production-ready prompt based on exactly what the community said works. 1The v3 pipeline runs 7 stages under the hood: query input → entity resolution (X handles, GitHub repos, subreddits, TikTok hashtags) → parallel multi-source search → full-depth retrieval → cross-source cluster merging → AI judge synthesis → expert follow-up mode. Comparison queries that previously took 12+ minutes now run in about 3 minutes. 4
Output modes:
--emit=compact (default), --emit=html (shareable dark-mode brief), --emit=md (debug). Depth flags: --quick (8–12 results/source), default (20–30), --deep (50–70). 4Community reception
Corey Ganim (@coreyganim, 49K followers) put the use case bluntly: "How to go viral by jumping on trends before they blow up: 1) paste the last30days github link into claude code 2) connect your X, reddit, and youtube api keys 3) Run /last30days once a week to get a pulse on trending topics in your niche." 6
Loading content card…
@itswilsoncharles described it as "one skill replaced my entire research workflow. You give it a topic, it scrapes Reddit, X, and the web for what people are actually talking about. Not old blog posts. Real conversations from the last 30 days." 7 Allie K. Miller (@alliekmiller, Time100 AI, 103K followers) noted that "so many people took last30days and built on top of it, myself included." 8
The agentic engineering angle is gaining traction among power users. @shao__meng (31K followers) documented Matt Van Horn's Research → Plan → Work loop: run
/last30days first, pipe the output to /ce:plan to generate a structured plan with acceptance-criteria checkboxes, then run /ce:work to execute. The explicit argument is that letting the plan reflect current community understanding rather than the model's training cutoff produces meaningfully better decisions. 9Today's trending status reflects a broader pattern: 5 of the 10 top GitHub Trending repos today are Claude-ecosystem tools, with
last30days at #1. 7Known limitations
The good news first: explainx.ai's June 5 review described it accurately — "It is not a truth machine. It is a recency and signal-discovery layer." 10 That framing matters.
Four concrete issues verified in GitHub Issues as of today:
YouTube silent drop (Issue #468): The engine logs
Got transcripts for 6/6 videos (0 failed) but the final output reports YouTube: 0 videos. Transcripts are fetched but videos get pruned by a relevance scorer that only evaluates title and description — not the transcript content itself. The result is successfully extracted data silently discarded. 11X/Twitter setup trap (Issue #396): The setup wizard generates a
.env template that only includes AUTH_TOKEN — missing CT0. Without CT0, X search silently fails but is reported as an active source in the config check. 12 Fix: manually add CT0=<your_ct0_cookie> to your .env after running the wizard.SessionStart hook warning (Issue #463): A
check-config.sh hook exits with exit 1 when no prior run exists, generating a hook-failure warning on every Claude Code startup. Non-blocking, but visible. 13Hermes security block (Issue #464): Hermes's security scanner flags the skill as DANGEROUS — 56 findings including CRITICAL exfiltration (
.env file writes) and HIGH injection (SKILL.md prompt injection risk) — and blocks installation entirely. 14 A community PR (#482) submitted today proposes cutting the default SKILL.md from 130K characters to 10K by switching to a lightweight dispatcher + lazy-loaded references, which would also reduce the Hermes security surface. 15Solo maintainer: Matt Van Horn is the only core maintainer. The repo has 62 open issues with no assignees and no milestones. Feature velocity has been strong — 623 commits in 5 months, v3.3.2 shipped today — but bus factor is real. 1
Engagement ≠ accuracy: The ranking mechanism inherits the flaws of engagement. A viral Reddit thread can be wrong. Polymarket odds reflect consensus bets, not ground truth. This is a signal-discovery tool, not a fact-verification tool. 10
The bottom line
If your workflow already involves manually checking Reddit, X, and HN before making decisions — tool selection, competitive research, meeting prep, content strategy — this is a direct replacement for that tab-by-tab manual work. The free sources (Reddit, HN, Polymarket, GitHub) are genuinely zero-config and useful on their own. Adding X via browser cookie auth requires about 2 minutes. That combination covers the most signal-dense platforms without spending anything.
The X/Twitter CT0 cookie issue means your X source will show as configured but silently return nothing until you add that second cookie manually. Worth knowing before you conclude "X isn't useful." 12
Cover: AI-generated illustration.
References
- 1mvanhorn/last30days-skill — GitHub
- 2mvanhorn/last30days-skill — AGENTS.md
- 3mvanhorn/last30days-skill — CONFIGURATION.md
- 4mvanhorn/last30days-skill — SKILL.md (v3.3.2)
- 5X: @hnshah — last30days tool comparison
- 6X: @coreyganim — last30days growth strategy
- 7X: search results for mvanhorn/last30days-skill
- 8X: @alliekmiller
- 9X: @shao__meng — Agentic Engineering methodology
- 10explainx.ai — /last30days Skill deep review
- 11GitHub Issue #468 — YouTube videos pruned by relevance scoring
- 12GitHub Issue #396 — Setup wizard writes incomplete X/Twitter template
- 13GitHub Issue #463 — SessionStart hook exits 1 on no prior run
- 14GitHub Issue #464 — Hermes installation blocked by security scan
- 15GitHub PR #482 — Split SKILL.md into lightweight dispatcher
Add more perspectives or context around this Post.