← Back to Skills Marketplace
last30days
by
Matt Van Horn
· GitHub ↗
· v3.0.0-open
· MIT-0
9412
Downloads
20
Stars
0
Active Installs
4
Versions
Install in OpenClaw
/install last30days-official
Description
Research any topic across Reddit, X, YouTube, TikTok, Instagram, Hacker News, Polymarket, GitHub, Perplexity, and more. AI agent scores by upvotes, likes, and real money. Also triggered by 'last30'.
Usage Guidance
This skill includes substantial runnable code and persistent storage but the registry metadata (no required env vars or binaries; no install) does not reflect that. Before installing or providing credentials: 1) Inspect and run the built-in diagnostic: python3 <skill_root>/scripts/last30days.py --diagnose to see which sources require keys and which binaries are missing. 2) Do NOT paste account tokens (AUTH_TOKEN/CT0 or others) unless you understand the risk — X tokens can grant access to your account data. Prefer read-only or scoped keys where possible. 3) If you want to try safely, run the scripts in an isolated environment (container or throwaway VM) and avoid writing secrets to ~/.config until satisfied. 4) Verify required binaries (node, yt-dlp) are acceptable to install on your system — node is required to run the vendored bird-search module. 5) Be cautious about enabling cron/automatic runs or running the setup/device-auth flows; those will persist configuration and may schedule recurring networked activity. 6) If you plan to use the skill, consider limiting credential scope, reviewing the vendored JS (bird-search.mjs), and confirming which backend (ScrapeCreators vs OpenAI/Perplexity/OpenRouter) the current variant actually uses (there are conflicting references).
Capability Analysis
Type: OpenClaw Skill
Name: last30days-official
Version: 3.0.0-open
The skill is a comprehensive research and monitoring tool that aggregates data from multiple social media platforms (Reddit, X, YouTube, TikTok, Instagram) and web sources. It features a sophisticated orchestration pipeline including intelligent pre-research (auto-resolution of handles/subreddits), a SQLite-backed knowledge accumulator with full-text search, and a 'fun judge' LLM-scoring mechanism. While the skill utilizes high-privilege tools like Bash for dependency management (installing yt-dlp via Homebrew) and allows the agent to modify its own configuration file (~/.config/last30days/.env) for user-requested toggles like ELI5 mode, these behaviors are transparently documented and strictly aligned with the stated purpose. The code includes security best practices such as checking file permissions on secrets files (lib/env.py) and using structured subprocess calls rather than raw shell execution. No evidence of malicious intent, unauthorized data exfiltration, or obfuscation was found.
Capability Assessment
Purpose & Capability
The name/description (research social/web sources, watchlist, briefings) matches the included code and references. The code contains connectors for Reddit, X, YouTube, TikTok, Instagram, Hacker News, GitHub, Perplexity, Polymarket and supports watchlists/SQLite persistence, which is coherent with the stated purpose. However, there are small inconsistencies across docs (e.g., changelog references SCRAPECREATORS_API_KEY as a primary env while SKILL.md lists OPENAI_API_KEY for Reddit), which look like versioning/maintenance drift.
Instruction Scope
SKILL.md instructs the agent to locate the skill folder, read/write multiple files, run the included Python CLI scripts, persist data to ~/.local/share/last30days/research.db and ~/.local/share/last30days/briefs, save reports to ~/Documents/Last30Days, and optionally run setup/device-auth flows. It also instructs always using --auto-resolve and running long-running networked searches. The skill will read and write user files and may perform network requests; these behaviors are broader than the skill's declared metadata (which lists no env vars or binaries).
Install Mechanism
Registry metadata shows no install spec and 'required binaries: none', but the shipped code expects Node.js (vendored bird-search .mjs executed via node) and mentions yt-dlp for YouTube. The package vendors JS code and launches subprocesses (node, possibly yt-dlp). This disparity (no declared binary requirements yet requiring node/yt-dlp) is an incoherence and increases risk because the runtime will spawn subprocesses with environment injection.
Credentials
The registry claims no required environment variables or credentials, but SKILL.md and code clearly expect multiple API keys and tokens (OPENAI_API_KEY, XAI_API_KEY, OPENROUTER_API_KEY, PARALLEL_API_KEY, BRAVE_API_KEY, SCRAPECREATORS_API_KEY, and X auth tokens AUTH_TOKEN/CT0). The skill also reads/writes a local ~/.config/last30days/.env and can inject those values into subprocesses. Requiring platform account tokens (especially AUTH_TOKEN/CT0 for X) and multiple LLM/web-search keys is broad and not declared — the requested secrets are disproportionate to the metadata and warrant caution.
Persistence & Privilege
The skill persists data to a local SQLite DB (~/.local/share/last30days/research.db), writes briefing JSON to ~/.local/share/last30days/briefs and Markdown to ~/Documents/Last30Days, and offers watchlist automation instructions (cron/launchd). It also contains a setup wizard that can write config and device-auth info. Persisting research, tokens, and saved outputs is functional for the feature but is a material persistence/privilege increase compared to the declared empty requirements and should be considered before granting credentials or enabling scheduled runs.
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install last30days-official - After installation, invoke the skill by name or use
/last30days-official - Provide required inputs per the skill's parameter spec and get structured output
Version History
v3.0.0-open
last30days v3.0.0-open: Major update with multi-mode research, persistent knowledge, and watchlist features.
- Added support for multiple modes: one-shot research, watchlist management, daily briefing, and query of accumulated knowledge.
- Introduced persistent storage: SQLite research database and saved briefings.
- Expanded sources: now includes Reddit, X, YouTube, TikTok, Instagram, Hacker News, Polymarket, GitHub, Perplexity, and more.
- Modular command routing via first argument (e.g. `watch`, `briefing`, `history`, or direct research topic).
- Improved API key handling and source availability checks.
- Reference-driven flow: each mode uses dedicated instructions, improving reliability and flexibility.
v2.9.3
Security scan improvements: declared AUTH_TOKEN/CT0 in optionalEnv, clarified X token access language (no browser session access), added permissions overview block, removed prompt-injection false positive
v2.9.1
Initial ClawHub release. v2.9.1: auto-save to ~/Documents/Last30Days/, ScrapeCreators Reddit backend, smart subreddit discovery, top comment elevation, Instagram Reels (8th source), TikTok, Polymarket, HN, X, YouTube.
Metadata
Frequently Asked Questions
What is last30days?
Research any topic across Reddit, X, YouTube, TikTok, Instagram, Hacker News, Polymarket, GitHub, Perplexity, and more. AI agent scores by upvotes, likes, and real money. Also triggered by 'last30'. It is an AI Agent Skill for Claude Code / OpenClaw, with 9412 downloads so far.
How do I install last30days?
Run "/install last30days-official" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is last30days free?
Yes, last30days is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does last30days support?
last30days is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created last30days?
It is built and maintained by Matt Van Horn (@mvanhorn); the current version is v3.0.0-open.
More Skills