AI PLAY玩法更新持续收录
← 回到更新流

2026-09-01 · 原文发布日

GitHub热榜日报推送到钉钉

n8n模板:每天九点抓GitHub Trending日榜前N个项目及星标数据,可选抓取README截断后交OpenAI兼容接口生成中文要点JSON,渲染成单页HTML上传到htmlhoster得到公开链接,再组装成带摘要和链接的签名消息推到钉钉或飞书群机器人。

原文要点

这是n8n.io上一个免费模板:每天09:00由cron触发,抓取GitHub Trending日榜并解析前N个仓库的星标、分叉、语言、今日新增星数;可选拉取raw.githubusercontent.com上的README并截断到设定字符数;交给OpenAI兼容Chat Completions接口生成中文要点JSON;渲染成单文件HTML报告,经htmlhoster agent上传得到公开链接;最后用签名webhook把摘要、榜首项目和报告链接推到钉钉或飞书群机器人。AI调用失败时回退为原始列表渲染。上传的htmlhoster报告是公开的且受上传限制约束。

这次做成什么

在本站练习中复刻这套「抓取→摘要→发布→推送」链条:先在n8n模板页导入原模板,再用一份本站虚构的仓库数据手动跑通摘要与钉钉消息组装环节,验证字段映射和签名逻辑,最后再放开每日定时。本站不提供可导入JSON,原模板需从n8n.io模板页导入。

准备什么

  • 一个可登录的n8n实例,能访问GitHub与raw.githubusercontent.com
  • OpenAI兼容接口的token,在n8n建Generic Header Auth凭据
  • 钉钉或飞书群机器人webhook地址,启用加签时要有签名密钥
  • 一个htmlhoster账号或agent用于上传HTML获取公开链接

具体怎么做

  1. 导入并核对模板

    在n8n.io/workflows/18961页面点导入到自己的n8n,逐个节点确认:cron触发器每天09:00、HTTP请求拉GitHub Trending、解析节点提取stars/forks/language/今日新增星、可选README抓取与截断长度设置。这些节点名以原模板为准,本站未实测界面。

  2. 配置三类凭据

    在n8n凭据里新建Generic Header Auth,Header名Authorization、值Bearer 你的token;在配置节点填入兼容接口URL与模型名;把钉钉机器人webhook和加签secret填进推送节点对应字段,飞书同理。

  3. 用合成数据手动跑通

    先关掉cron,点Execute workflow手动执行。为避免真实抓取失败干扰,可在解析节点后临时接一个Set节点注入下方测试数据,观察摘要节点输出是否为JSON、HTML渲染是否完整、htmlhoster是否返回公开URL。

  4. 核对钉钉消息与签名

    检查推送节点发出的消息体包含短摘要、top项目列表和报告链接;启用加签时确认timestamp与sign参数按密钥生成,机器人返回errcode为0才算送达。

  5. 放开定时并控制成本

    确认手动跑通后重新启用cron。按原模板提示调整仓库数量N、是否抓README、README截断字符数来控制运行时长与token消耗,先设小值试运行几天再加大。

可直接复制的材料

注入用的合成仓库测试数据

本站虚构练习数据,用于替代真实抓取结果做手动测试;接入真实流程后删除该Set节点。

[{"rank":1,"name":"demo-org/flow-lens","language":"TypeScript","stars":48210,"forks":3105,"stars_today":612,"readme":"Flow Lens 是一个虚构的可视化工作流调试工具,支持节点级日志回放与数据快照对比。"},{"rank":2,"name":"demo-org/paper-cache","language":"Python","stars":15890,"forks":940,"stars_today":285,"readme":"Paper Cache 是一个虚构的本地文献缓存与引用管理库,提供增量索引命令行。"},{"rank":3,"name":"demo-org/tiny-tuner","language":"Rust","stars":9340,"forks":512,"stars_today":198,"readme":"Tiny Tuner 是一个虚构的嵌入式参数调优框架,主打零依赖单二进制分发。"}]

中文要点JSON摘要提示词

本站独立编写的练习提示词,与原模板内置提示词不同;日期由流程注入或让模型填当天。

你是技术趋势编辑。下面是今日GitHub Trending上榜仓库的JSON数据,包含名称、语言、总星数、分叉数、今日新增星数和README节选。请只输出一个JSON对象,不要输出任何其他文字或代码围栏。结构为:{"date":"今天日期YYYY-MM-DD","overview":"一句不超过60字的全榜趋势概述","items":[{"name":"仓库全名","insight":"不超过40字的中文要点,说明它解决什么问题、为何值得关注","tag":"从 工具/框架/库/模型/教程 中选一个"}]},items按输入顺序覆盖全部仓库。输入数据如下:

输入与输出示例

本站虚构演示输出,非模型实际返回;字段与输入一一对应。

输入

用上方合成数据中的三条仓库(flow-lens今日+612星、paper-cache今日+285星、tiny-tuner今日+198星)连同README节选一起发给摘要提示词。

对应输出

{"date":"2026-09-02","overview":"今日热榜集中在开发者工具链,可视化调试与轻量调优项目涨幅明显。","items":[{"name":"demo-org/flow-lens","insight":"给自动化工作流加上节点级日志回放,排查分支错误更直观","tag":"工具"},{"name":"demo-org/paper-cache","insight":"本地文献缓存加增量索引,适合离线管理引用","tag":"库"},{"name":"demo-org/tiny-tuner","insight":"零依赖单二进制的嵌入式调优框架,部署门槛低","tag":"框架"}]}

做完检查这些

  • 摘要节点输出是合法JSON且items数量与输入仓库数一致,无代码围栏包裹
  • htmlhoster上传后返回可公开访问的http链接,浏览器匿名窗口能打开报告页
  • 钉钉机器人返回errcode为0,群里收到的消息包含摘要、top项目和报告链接
  • 关闭AI凭据或让接口报错时,流程回退渲染原始仓库列表而不是整体失败

容易卡住的地方

  • htmlhoster上的报告是公开的,别把含内部信息的摘要写进HTML;上传量受该平台限制
  • 钉钉机器人若开启加签,缺secret或签名算法不对会被拒收,需在机器人设置里核对
  • 环境无法访问raw.githubusercontent.com时README抓取会失败,可先关掉该开关跑通主链路
  • cron默认每天09:00触发,导入后先手动测试再启用,避免配置没填完就空跑
  • 精确token费用与耗时取决于所选模型与N值,本站不做估算

原文与作者资料 ↗

本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。

原文标题
Summarize GitHub trending repos with OpenAI and share via htmlhoster and DingTalk
原作者
ethandavis
原始发布日期
2026-09-01T00:39:14.340Z
来源
https://n8n.io/workflows/18961