【GitHub】last30days-skill 深度技术解析

【GitHub】last30days-skill 深度技术解析 核心金句“Google aggregates editors./last30dayssearches people.” —— 这句话道出了整个项目的设计哲学。引言想象一个场景你想了解「Cursor IDE」最近一个月的社区口碑你会怎么做打开 Reddit 搜、去 X 上翻热门 thread、去 YouTube 看测评、去 Hacker News 翻讨论、去 GitHub 看 issue……每个平台各查一遍最后还得自己消化整合。这一套流程下来半天就过去了。而last30days-skill要做的事情就是你只需输入/last30days Cursor IDE剩下的一切由 Agent 自动完成。这个项目在 GitHub 上收获了超过39,000 Stars截至 2026 年 6 月长期占据 GitHub Trending 榜首。本篇文章将从架构设计、数据引擎、评分算法、v3 核心升级等维度对它进行一次全景式的技术拆解。一、先搞清楚它是什么不是一个独立工具而是一个 Agent Skill这是理解 last30days-skill 最重要的一点。它不是一个 CLI 工具不是一个 SaaS 产品不是一个传统的搜索引擎。它是一个Agent Skill——遵循agentskills.io规范的行为扩展包。具体来说用户输入: /last30days Cursor IDE宿主 Agent(Claude Code / Codex / Cursor / Gemini CLI...)加载 skills/last30days/SKILL.md获取行为规范按规范调度底层脚本(Python / Node.js)并行查询 13 个平台评分归一化双 Judge 评审输出结构化简报它本身不执行搜索——它注入一份行为规范给宿主 AgentAgent 按规范调度 Python/Node.js 脚本来完成所有操作。这本质上是一种声明式编程Skill 文件描述应该做什么Agent 负责怎么执行。跨平台的 Skill 规范生态宿主平台安装方式Claude Code/plugin marketplace add mvanhorn/last30days-skillCodex / Cursor / Gemini CLI / Copilot 等 50npx skills add mvanhorn/last30days-skill -gclaude.ai Web下载.skill文件 → Settings → Capabilities 上传OpenClawclawhub install last30days-official开发者手动安装git clone 软链到~/.claude/skills/last30days这种设计带来一个巨大的工程优势一次编写50 harness 复用。Skill 作者不需要关心不同 Agent 框架的 API 差异——宿主 Agent 负责适配。二、四层架构整个系统的工程设计深入源码后我将 last30days-skill 的架构归纳为四个层次第一层规范层Specification Layer文件入口skills/last30days/SKILL.mdREADME 明确声明此文件是 “source of truth”这是一份声明式的行为规范文档定义了/last30days topic命令的完整行为数据源的调用顺序和并行策略评分逻辑和输出格式每个阶段的目标和约束构建脚本skills/last30days/scripts/build-skill.sh将其打包为标准的.skill文件。第二层消歧层Pre-research Engine这是v3 版本最关键的架构升级由贡献者j-sperling实现。v2 的痛点搜索 “OpenClaw” 可能命中名字相似的无关联项目搜索 “Paperclip” 可能返回 1990 年代电影而非目标仓库。v3 的解决方案在触发任何平台搜索之前先运行一个 Python pre-research brain 做实体消歧输入: OpenClaw ↓ Pre-research Engine (Python) ↓ 解析输出: - X handle: steipete (Peter Steinberger) - GitHub: openclaw/openclaw 仓库 - Subreddit: r/openclaw, r/ClaudeCode - YouTube channel 正确链接 - TikTok hashtag 正确拼写 ↓ 带着解析后的实体 ← 才发 API 请求这解决了跨平台的同指异名问题Entity Resolution是保证搜索质量的第一道关口。第三层归一化层Engagement Scoring这是整个系统最精巧的设计。核心挑战如何将 “Reddit 1,500 upvote” 与 “TikTok 360 万播放量” 放在同一维度下比较项目采用的设计哲学是“按人投票的信号强度归一化”——每一种信号都代表一个或多个人用行为投票数据源归一化信号成本Redditupvote 排序 top comments公开 JSON API$0Hacker Newspoints / comments$0Polymarket% 赔率非美元成交额$0GitHubstars / PR velocity / release notes$0X / Twitterlike 排序的 thread用户自有浏览器 cookie免费YouTube全字幕提取筛出 5 句 quote 级别关键句yt-dlp 免费TikTok / Instagram / Threadsengagement 排序 字幕ScrapeCreators API100 次免费BlueskyAT Protocol postsApp password 免费Perplexity Sonar带 citation 的 grounding web searchOpenRouter PAYGWeb 搜索编辑型内容“one signal of many”Brave Search 2000 次/月免费小红书RED社区贡献接入视上游 keyTruth Social社区贡献接入视上游 keyDiggX 上 1,000 个高信噪比 AI 账号 leaderboard视上游关键设计约束Per-author cap 3防止任何单一大 V 的声音主导结果Polymarket 显示 % 赔率而非成交量——设计理由是$66K 成交量对非交易者无意义74% 停火可能才有信号EXCLUDE_SOURCEStiktok,instagram,threads付费源可按查询粒度关闭避免意外账单第四层融合层Cross-source Cluster Merging Judge Agentv2 的痛点同一故事在 Reddit X YouTube 上报成 3 条独立结果。v3 的解决方案基于实体的重叠检测Entity-based Overlap Detection将同一事件的跨平台报道合并为 1 个 cluster。一个真实的输出示例/last30days Iran vs USA输出“Day 38 of the war. Trump’s Tuesday deadline for Iran to reopen the Strait of Hormuz. Two US warplanes downed. Oil at $126/barrel… Polymarket: ceasefire by Dec 31 at74%.27 X posts, 10 YouTube videos, 20 prediction markets—— folded into one narrative.”这正是它与搜 13 个平台然后粘贴 13 个结果的本质区别。最后由双 Judge Agent 进行评审Judge 1相关性 / 事实性打分Judge 2幽默分Best Takes—— 高赞金句会被嵌入最终简报三、v3 杀手级功能一览功能命令示例技术实现要点GitHub 人物模式/last30days Peter Steinberger --github-usersteipete切到 author-scoped 查询展示他/她最近在 ship 什么自动竞品对比/last30days OpenAI --competitors推理模型先 WebSearch 找 2 个竞品Anthropic、xAI然后并行跑 3 路 pipelineBest Takes默认启用第二个 judge 给每条结果打幽默分高赞金句嵌入简报ELI5 模式/last30days Nano Banana Pro prompting eli5 on同一份数据用大白话重写可分享 HTML 简报/last30days OpenClaw --emithtml输出自包含 dark-mode HTML 文件零 JS 离线可看可拖入 Slack/Notion四、完整数据流一次查询的全生命周期用户输入: /last30days topic │ ▼ ┌──────────────────────────────────┐ │ Phase 1: Pre-research Engine │ ← Python brain (v3 新增) │ 实体消歧 关系解析 │ │ OpenClaw → │ │ steipete openclaw 仓库 │ │ r/openclaw YouTube channel │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Phase 2: 并行 13 平台查询 │ │ 带着 resolved entity 发请求 │ │ Reddit | HN | X | YouTube | │ │ Polymarket | GitHub | TikTok | │ │ Bluesky | Perplexity | Web | │ │ 小红书 | Truth Social | Digg │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Phase 3: Engagement Scoring │ │ 异构信号归一化 │ │ Cross-source Cluster Merging │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Phase 4: Judge Agent 双评审 │ │ Judge 1: 相关性/事实性 │ │ Judge 2: 幽默分 (Best Takes) │ └──────────────┬───────────────────┘ ▼ ┌──────────────────────────────────┐ │ Phase 5: 输出简报 │ │ 带引用的结构化摘要 │ │ 格式: Markdown / HTML / ELI5 │ └──────────────────────────────────┘五、生态系统契合它为什么能在 2026 年爆发last30days-skill的爆发不是偶然而是踩中了 AI Agent 生态的几个关键转折点生态转折点last30days 的对应设计Agent Skill Marketplace 标准化遵循agentskills.io规范一次编写 50 harness 复用数据花园围墙被 cookie/key 攻破vendored Node.js Bird 客户端用用户自有浏览器 cookie 访问 X 数据真实信号优先于 SEOGoogle 不索引 Reddit 评论、ChatGPT 看不到 X——跨平台并行是唯一开源方案Judge Agent 模式可审计Cross-source clustering 多 judge 评分公开工程细节可审计对比 Perplexity 等黑盒六、安装与使用快速上手基础安装适用 50 Agent 平台# 全局安装npx skillsaddmvanhorn/last30days-skill-g# 指定宿主如仅 Cursornpx skillsaddmvanhorn/last30days-skill-g-acursor管理命令npx skills list-g# 查看已安装的 skillsnpx skills update last30days-g# 更新npx skills remove last30days-g# 移除Claude Code 专用安装/plugin marketplace add mvanhorn/last30days-skill /plugin install last30days使用示例/last30days Cursor IDE /last30days React Server Components /last30days AI coding tools --emithtml /last30days OpenAI --competitors /last30days nvidia earnings reaction --save-dir ./research输出位置系统默认路径macOS / Linux~/Documents/Last30Days/WindowsC:\Users\用户名\Documents\Last30Days\七、使用建议与局限性✅ 最佳使用场景开源项目近期热度调研产品 / 公司 / 技术方向的社区反馈分析Reddit / HN / X 上用户真实讨论汇总竞品分析、内容选题、市场观察❌ 不适合的场景需要 30 天以上历史数据的深度归档需要实时数据流的监控系统商业级合规报告仅关注单一平台内容需要 100% 全覆盖的精确搜索最佳实践把它当作社区舆情和近况整理工具而不是搜索引擎替代品。查某个具体产品时加上限制条件能获得更精准的结果/last30days Supabase auth developer experience /last30days Claude Code vs Cursor reddit /last30days Apple Vision Pro developer sentiment八、总结一个时代的缩影last30days-skill的成功折射出 AI Agent 生态在 2026 年的三个重要趋势从 SaaS 到 Skill能力不再需要封装为独立产品一个.skill文件 标准规范就能接入 50 平台。分发成本趋近于零网络效应极大化。从搜索到计算事实传统搜索引擎聚合编辑内容但 Reddit 评论区的真实反馈、Polymarket 的赔率、X 上社区投票形成的共识——这些人的信号才是更有价值的信息来源。last30days 做的不是搜索是计算人用 upvote / like / 真金白银投出来的事实。从黑盒到可审计Perplexity 等闭源 AI 搜索的评分逻辑是黑盒你永远不知道为什么某条结果排在前面。last30days 的公开评分算法、双 judge 评审、cross-source clustering 让整个过程可审计、可质疑、可改进。它的核心设计哲学可以浓缩为一句话“Google aggregates editors./last30dayssearches people.”