Last 30 Days - Multi-Platform Research Engine

AI agent skill that searches Reddit, X, YouTube, TikTok, Instagram, HN, Polymarket, GitHub, Bluesky, and the web in parallel - scoring results by real engagement (upvotes, likes, views, money) instead of SEO rank - then synthesizing a grounded brief.

Why It Matters

Google aggregates editors. last30days searches people. A Reddit thread with 1,500 upvotes is a stronger signal than a blog post nobody read. Polymarket odds backed by $66K in volume are harder to argue with than a pundit's guess. No single AI has native access to all these platforms - last30days bridges them through user-provided keys and browser sessions.

Core Architecture (v3)

Intelligent pre-research: Before searching, the engine resolves who matters - X handles, GitHub repos, subreddits, TikTok hashtags, YouTube channels. "OpenClaw" resolves @steipete. "Kanye West" resolves r/hiphopheads, @kanyewest, and "bully review" on YouTube.

Cluster-first synthesis: When the same story appears on Reddit, X, and YouTube, v3 merges them into one cluster via entity-based overlap detection. Multi-source clusters are highest confidence.

Best Takes: A second judge scores every result for humor, wit, and virality alongside relevance. The cleverest one-liners surface in every brief.

Per-author cap: Max 3 items per author prevents any single voice from dominating.

Current version snapshot: upstream mvanhorn/last30days-skill is at tag v3.9.4 / HEAD a5b3ca1f3ccd76eb176603991ae1ec1e07105ce0 as of 2026-07-04, MIT license, about 48.9K GitHub stars. Kevin's executable submodule remains pinned at v3.8.3 (d5f3083) in this worktree; this review records upstream drift but does not advance the submodule. Source: GitHub API + git ls-remote; local submodule, 2026-07-04

The reviewed v3 launch thread matters because it demonstrates entity-resolution before search: /last30days OpenClaw vs Hermes vs Paperclip resolved X handles, GitHub repos, subreddits, TikTok hashtags, and related communities before collecting evidence. That is the route Kevin wants for current research: resolve the entity graph first, then search each surface, then cluster across sources. Source: X/@mvanhorn, 2026-04-09

Sources & Auth

Source Auth Cost
Reddit (with comments) + HN + Polymarket + GitHub Nothing / gh CLI Free
X / Twitter Browser cookies (FROM_BROWSER=auto) or XAI_API_KEY Free
YouTube yt-dlp (190K+ stars, open source) Free
Bluesky App password (BSKY_HANDLE + BSKY_APP_PASSWORD) Free
TikTok + Instagram + Threads + Pinterest SCRAPECREATORS_API_KEY 10K free calls
Perplexity Sonar OPENROUTER_API_KEY Pay as you go
Web search BRAVE_API_KEY 2K free queries/mo

Config lives at ~/.config/last30days/.env.

Usage

# Basic research
/last30days <topic>

# Agent mode (non-interactive, saves to ~/Documents/Last30Days/)
/last30days <topic> --agent

# Comparison
/last30days "Claude Code vs Codex"

# Quick scan
/last30days <topic> --quick

# Deep research
/last30days <topic> --deep

# Time window
/last30days <topic> --days=7

Wiki Integration Protocol

last30days is the go-to research tool before writing or updating any wiki page that touches external topics (people, tools, concepts, current events).

When to use:

  • Before creating/enriching a person page - run /last30days <name> --agent to get their last 30 days of activity across all platforms
  • Before updating a tool or project page - check community sentiment and recent developments
  • During source-compile automation - supplement raw source data with live community signal
  • Before any signal-radar or frontier-radar run - cross-reference findings
  • When Kevin asks a question about the current state of anything - search the wiki first (mandatory), then use last30days for real-time community grounding

What to capture: When last30days returns results that add value to existing wiki pages, update those pages. Key signals worth persisting: community sentiment shifts, engagement metrics on notable events, Polymarket odds on predictions, and direct quotes from high-signal sources.

Installation

# Cursor
git submodule update --init --recursive skills/personal/last30days
npm run bootstrap

# Claude Code
/plugin marketplace add mvanhorn/last30days-skill

Requires Python 3.12+, Node.js. Optional: yt-dlp, gh CLI.

Reputation


Timeline