Vibeleaderboard
Index / agent

Last30Days AI Research Skill

github.com/mvanhorn/last30days-skill
Visit github.com
Category
AI Agents
Rank
Pricing
Open Source
Type
AGENT
Builder
@mvanhorn
Latest release
v3.24.0
Date

About

An AI agent skill that automatically researches any topic across Reddit, X, YouTube, Hacker News, Polymarket, and other platforms from the last 30 days, then synthesizes findings into a grounded summary with real citations. Designed to keep users current with rapidly evolving topics in AI and tech.

What it does

A packaged set of agent instructions plus a Python engine that answers one question: what happened around a person, company, or topic in the past 30 days. It fans out concurrently across Reddit, X, YouTube, TikTok, Hacker News, GitHub, arXiv and Polymarket, normalizes each hit, hard filters by date, scores it on native engagement counts, deduplicates, then hands ranked evidence clusters back to the model that called it. A separate discovery mode inverts the flow: it sweeps hot lists first, nominates candidate topics, and runs a full research pass on each one that survives.

Why it's ranked here

What lifts this above a search wrapper is the plumbing around ranking. Source outcomes are typed into ten distinct states, so a rate limit or an auth failure never reads as a source having nothing to say. The machine-readable research contract is versioned and locked by a checked-in golden snapshot. A discovery run where nothing clears the evidence bar prints an honest empty result and names the closest weak signal instead of ranking noise. Coverage is gated at 84 percent. The cost is real: most of the source table needs credentials, cookies, or a helper binary on the path before it does anything at all.

What's good

Retrieval quality has explicit defenses. A grounding check requires the head word of the topic to appear before final ranking, so a viral off-topic post cannot ride engagement into the brief, and the check is deliberately conservative so its own misses cost nothing. The limited budget for fetching comments goes to posts that already passed grounding. The evidence bar for discovery is absolute rather than relative to the current pool, which is the usual way such bars rot. There is also a local evaluation harness measuring overlap, retention, precision and ranked gain against a baseline revision, with a separate model acting as judge.

Tradeoffs

Free out of the box means Reddit, Hacker News, Polymarket and GitHub. X needs either browser session cookies or a paid provider key, TikTok and Instagram need a third-party scraping key, and several sources activate only when their helper binary resolves on the agent subprocess path, which the project documents as a recurring setup failure. One documented Reddit search path routes through a paid model provider's web search tool. HTML publishing uploads pages to a hosted service and they are public by default. The quality evaluation runs five fixed topics by default, and its own notes call the ranking metrics comparative rather than truth.

How to use it well

Best fit is anyone who needs the community's current read before a call, a purchase, or a build: sales prep, competitor watch, meeting research, prompt technique hunting. It belongs at the front of a workflow, feeding a versioned machine-readable export to whatever writes the actual document. Budget half an hour for credentials and browser auth, or accept the thin free tier. It is not monitoring and it is not an archive. The window is recent by design, so it will not tell you what a company shipped two years ago, and it makes no claim on paywalled or private sources.

Technical notes+

pyproject.toml declares Python 3.12 or newer with an empty runtime dependency list, puts pytest, pytest-cov, pyyaml and towncrier in a dev group, and pins the coverage floor at 84. docs/how-search-works.md documents the retrieval path: two sources run in parallel on a two-worker thread pool, Reddit search goes out through the OpenAI Responses API with an allowed-domains filter and each thread is then enriched against Reddit's free JSON endpoint for real scores and top comments, while X falls back from a vendored Bird client to the xAI API to skipping entirely, with three retries and exponential backoff underneath. docs/reference/json-export.md fixes the agent export at version 1.2 with a ten-state source outcome map and a separate discovery contract at 1.1. docs/search-quality-eval.md covers the optional offline harness that computes Jaccard overlap, retention, precision and nDCG against a baseline revision using Gemini as judge, and states it is not in CI by default. mcp/cmd/last30days-pp-mcp/main.go is a thin stdio server registering one research tool, built on mark3labs/mcp-go per mcp/go.mod, and mcp/README.md describes the binary embedding the Python engine, extracting it to a per-user cache and shelling out to python3. hooks/hooks.json wires a single session-start config check, .claude-plugin/plugin.json carries the plugin metadata, LICENSE is MIT, CONCEPTS.md defines the grounding, confidence-floor and checkpoint vocabulary, CONFIGURATION.md enumerates the environment and flag knobs, and AGENTS.md requires skills/last30days/scripts/lib/__init__.py stay a bare package marker with no eager imports, which the fetched file confirms.

Observed

License
MIT
Language
Python engine, plus a Go MCP server wrapping it
Runtime requirement
Python 3.12 or newer; the project manifest declares no third-party runtime dependencies
Install surface
harness plugin marketplace, the Agent Skills installer, or a drag-in bundle for Claude Desktop
Interfaces
slash command inside agent harnesses, direct command-line invocation of the engine, and an MCP server exposing one research tool
Machine contract
versioned JSON export for research plus a separately versioned export for discovery, locked by a golden snapshot test
Failure reporting
per-source outcome states that separate a clean empty result from rate limits, auth failure, timeout, unreachable endpoints and schema drift
Tests
pytest suite in a top-level tests directory with a coverage floor configured in the project manifest
Documentation
README maintained in several languages beyond English, with separate concept, configuration and contributor guides

Read from README.md, pyproject.toml, CONCEPTS.md, CONFIGURATION.md, AGENTS.md, LICENSE, docs/how-search-works.md, docs/search-quality-eval.md, docs/reference/json-export.md, mcp/cmd/last30days-pp-mcp/main.go, mcp/README.md, mcp/go.mod, hooks/hooks.json, .claude-plugin/plugin.json, skills/last30days/scripts/lib/__init__.py.

What it can do

  • Research recent discussions across multiple platforms

    Topic or keywordAggregated content from Reddit, X, YouTube, Hacker News, Polymarket and other platforms from last 30 days

  • Synthesize research findings into comprehensive summary

    Raw data from multiple platformsGrounded narrative summary with real citations

  • Compare topics or viewpoints across platforms

    Multiple topics or comparative queryComparative analysis showing differences and similarities

  • Auto-save research sessions

    Research query and resultsSaved research session for future reference

  • Extract real-time insights from prediction markets

    Topic related to predictions or forecastsMarket sentiment and probability data with citations

  • Track rapidly evolving AI and tech topics

    AI or technology-related topicCurrent status and recent developments with timeline

Tags

ai-researchsocial-mediatrendsclaudeagent-skillreddittwitterreal-time

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.