前言
作为开发者,每天手动浏览 GitHub Trending 榜单面临信息过载、README 语言障碍及内容理解困难等问题。为此,开发了一个 GitHub Insight Agent,自动爬取热门项目,利用 LLM 进行深度分析,并推送整理后的情报日报。
该方案基于 GitHub Actions 运行,无需额外服务器资源。
功能特性
这是一个具备感知(Collector)、思考(Analyzer)、表达(Notifier)能力的 AI Agent。
- 技术理解:通过 Prompt 让 AI 阅读源码文档,而非简单翻译。提供一句话总结、核心痛点分析及举一反三的应用建议。
- 零成本部署:利用 GitHub Actions 的定时任务功能,使用免费计算资源。
技术架构
架构设计解耦如下:
- 数据源 (Collector):
requests+BeautifulSoup抓取 GitHub Trending 榜单。 - 素材获取 (Fetcher):调用 GitHub API 获取项目的 README.md 原始内容。
- 大脑 (Analyzer):接入 DeepSeek / OpenAI API,使用 Prompt Engineering 输出结构化 JSON 数据。
- 推送 (Notifier):通过 Webhook 对接飞书/钉钉群机器人。
- 调度 (Scheduler):
.github/workflows实现 Cron 定时任务。
核心逻辑主要功夫花在 Prompt 的调优上。
# 核心逻辑伪代码
def main():
projects = get_trending()
for p in projects:
readme = get_readme(p.name)
report = ai_analyze(readme)
send_to_im(report)
部署指南
- Fork 项目:进入仓库页面,点击右上角 Fork。
- 准备 API Key:准备 LLM API Key(推荐 DeepSeek 或 OpenAI)及 Webhook 地址(飞书/钉钉群机器人)。
- 配置 GitHub Secrets:在仓库 Settings -> Secrets and variables -> Actions 中填入变量:
LLM_API_KEY: 你的 keyLLM_BASE_URL: 你的模型地址NOTIFIER_WEBHOOK: 你的机器人地址
- 运行:配置完成后,Actions 页面可手动触发或等待定时任务执行。
Prompt 设计思考
直接丢给 AI 一篇 README 往往效果不佳。为生成高质量的'举一反三'内容,需迭代 Prompt。
关键技巧:
- 角色设定:设定为'极具商业洞察力的技术专家'。
- 思维链 (CoT):要求 AI 先理解核心逻辑,再发散应用场景。
- 防幻觉:明确告诉 AI,'不知道的细节就说不知道,严禁瞎编'。
具体的 Prompt 内容通常放在项目的 prompts 文件夹下。


