开源一个能自动发现和分析 GitHub 仓库的 AI Skill 与全栈应用

大家好,我是汉堡🍔。

今天来聊一个很有意思的话题——同一个功能,用两种完全不同的方式实现,会是什么体验?

事情的起因是这样的:我在懒猫搬砖做副业的时候,经常需要去 GitHub 上找适合移植的开源项目。手动翻实在太累了,于是我就想——能不能写个工具自动帮我爬、帮我判断?

说干就干。但有趣的是,我前后做了两个版本:一个叫 GitHub Repo Crawler,是个 AI Agent Skill;另一个叫 RepoRadar,是个完整的全栈应用。

功能核心是一样的——爬 GitHub 仓库、分析能不能用、推送到飞书。但形态天差地别。下面分别聊聊它们。


博客文章链接

https://blog.hejiajun.com/archives/kai-yuan-yi-ge-neng-zi-dong-fa-xian-he-fen-xi-github-cang-ku-de-ai-skill-yu-quan-zhan-ying-yong

GitHub Repo Crawler:把能力装进 AI Agent 的口袋

仓库地址https://github.com/dnwwdwd/github-repo-crawler

它是什么?

简单说,它是一个 AI Agent Skill——给 Claude Code、opencode、Codex 这类 AI 编程助手用的「插件」。

如果你用过 Claude Code 的 Skill 机制,就很好理解:它就是一个 SKILL.md 文件,告诉 AI「你现在有了爬取 GitHub 仓库的能力,遇到相关任务就自动调用」。

怎么用?

不需要部署,不需要启动服务。你只需要把这个 Skill 装到你的 AI Agent 里,然后在对话里直接说:

「帮我搜一下最近一周 GitHub 上 Star 增长最快的 Python 开源项目」 「看看这个仓库适不适合移植到懒猫微服」

AI 就会自动激活这个 Skill,调用 GitHub API 去搜索、分析,然后把结果吐给你。

适合谁?

场景说明
🧑‍💻 AI 重度用户已经习惯了在 Claude Code / Codex 里干活的人,加个 Skill 就能用
临时需求偶尔想搜一下 GitHub 仓库,不想专门跑个应用
🔧 轻量级不需要持久化数据、不需要后台定时任务,用完即走

产物:一次对话 + 即时结果。


RepoRadar:一个完整的 GitHub 仓库监测系统

仓库地址https://github.com/dnwwdwd/repo-radar

它是什么?

RepoRadar 是一个完整的全栈 Web 应用,不只是「搜一下」,而是「持续监测」。

技术栈一览:

层级技术
后端Python FastAPI
前端React + Vite + TypeScript
数据库SQLite
调度APScheduler 定时任务
通知飞书 SDK(即时推送 + 每日汇总)
AI 分析Agent ReAct 模式分析仓库质量
部署单容器 Docker,一键跑起来

它做了什么?

RepoRadar 的完整工作流是这样的:

plaintext
复制代码
GitHub Search 抓取 → 规则过滤 → 去重入库 → Agent 分析 → 飞书推送

并且这套流程是自动定时跑的,不需要人盯着。

具体来说,v1 版本冻结了以下功能:

  • ✅ GitHub Search 抓取(按关键词、语言、Star 数等维度搜索)
  • ✅ 规则过滤 + 去重 + 入库
  • ✅ Token 降级与失效自动暂停
  • Agent 智能分析:自动判断仓库质量、技术栈、移植难度
  • ✅ 优先级队列 + 失败重试
  • ✅ 仓库列表 + 筛选 + 详情展开(Web 界面)
  • ✅ 手动提交单个 GitHub URL(插队分析)
  • ✅ 系统状态页 + 配置中心热重载
  • 飞书即时推送 + 每日汇总
  • ✅ 单容器懒猫微服打包

同时,为了控制范围、避免 Vibe Coding 时「管不住手」,明确不进 v1 的功能有:Star 增速监控、批量提交、导出 CSV、多数据源、语义去重等——这些留给后续版本。

适合谁?

场景说明
🏢 团队使用部署一个实例,全团队都能通过 Web 界面看、飞书收推送
🔄 持续监测不是搜一次就完了,而是定时跑、自动分析、主动推送
📊 数据沉淀仓库数据持久化存储,有历史记录、可筛选可回溯
🎯 副业/业务场景懒猫移植这种有稳定需求的工作流,需要系统化工具

产物:一个跑在服务器上的 Web 应用 + 飞书群里的每日推送。


核心对比:Skill vs 全栈应用

两个项目功能一样,形态不同,本质上是两种解决问题思路的体现:

维度GitHub Repo Crawler(Skill)RepoRadar(全栈)
形态AI Agent 插件(SKILL.md)独立 Web 应用
启动方式对话中自动激活Docker 部署 / 手动启动
交互方式自然语言对话Web 界面 + 飞书推送
数据存储不持久化(对话即数据)SQLite 持久化,历史可查
定时任务❌ 无(按需触发)✅ APScheduler 定时抓取
多用户❌ 单人使用✅ Web 界面多人可访问
通知推送对话内返回结果飞书即时推送 + 每日汇总
Agent 分析AI 本身就是 Agent内置 ReAct Agent 自动分析
上手门槛极低(装 Skill 即可)中等(需要部署)
适合场景个人临时使用、AI 工作流团队持续使用、业务系统

一句话总结:

Skill 版是「随叫随到的超级实习生」——你问它就干。RepoRadar 是「专职的后台管家」——部署好之后自己定时跑,干完了主动通知你。


为什么做两个版本?

其实这背后有一个挺有意思的思考。

RepoRadar 是我用 Harness 体系(文档驱动 + 范围冻结 + 分阶段开发)认真做的全栈项目,前后分了 8 个 Phase,写了完整的 PRD、AGENTS.md、技术文档。它是一个工程化的产物

但后来我发现:很多时候我只是想快速搜一下 GitHub 仓库,不想打开浏览器、不想登录系统。这时候如果能在 Claude Code 的对话里直接问一句就好了。

于是就有了 GitHub Repo Crawler——把核心能力抽出来,做成 AI Agent 的 Skill。不需要部署、不需要界面、不需要数据库,对话就是一切。

这两个版本不是替代关系,而是互补关系

  • 日常快速搜索 → 用 Skill
  • 团队持续监测 → 用 RepoRadar

写在最后

同一个功能,两种形态,背后是两种截然不同的设计哲学:

  • Skill 的思路:把工具嵌入 AI 的工作流,让 AI 来调用,人只需要对话。
  • RepoRadar 的思路:把工具做成独立系统,定时自动运转,人只需要看结果。

没有谁好谁坏,只有适不适合。如果你也是 AI 重度用户,强烈建议试试把常用功能做成 Skill——那种「在对话里随口一问就有答案」的体验,真的回不去了。

两个项目都是开源的,欢迎 Star 和 PR 👇


本文由汉堡🍔原创,首发于个人博客 blog.hejiajun.com

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
吃遍全国汉堡
下载 APP