开源项目 issue 一多,人工分类就是灾难。这个 n8n 工作流模板监听 GitHub webhook,新 issue 进来用大模型自动打标签、判断优先级,再通知到群。维护者和团队都能省下大量分诊时间。
工作流链路
GitHub webhook 触发 -> 提取 issue 标题和正文 -> LLM 分类(bug/feature/文档/疑问 + 优先级)-> 调 GitHub API 打标签 -> 通知群。
下载模板
使用步骤
- 导入:n8n -> Workflows -> Import from File,选 github-issue-triage.json
- Webhook 节点:设 POST 路径,在 GitHub 仓库 Settings -> Webhooks 指向 n8n 的公网地址,触发事件勾
Issues - LLM 节点:填 API key,Prompt 让模型输出 JSON(type + priority + reason)
- GitHub API 节点:填 Personal Access Token(需 repo 权限),用
PATCH /repos/:owner/:repo/issues/:number加 labels - 通知节点:飞书/钉钉/Slack webhook
- 试运行:随便开一个测试 issue,看是否自动打标签
配套 Prompt(LLM 分类)
你是项目维护者。判断这个 GitHub issue 的类型和优先级,仅输出 JSON:
- type: bug | feature | documentation | question
- priority: P0(阻断/数据丢失)| P1(主要功能受影响)| P2(次要)| P3(优化/疑问)
- reason: 一句话依据
判断依据:标题 + 正文。正文为空或只有「doesn't work」无复现步骤的,优先级最高 P2 起步。
Issue 标题:{{title}}
Issue 正文:{{body}}踩坑
- LLM 输出非 JSON:Prompt 末尾强调「仅输出 JSON」,n8n 加解析重试 + 失败兜底分支(默认打
needs-triage标签) - GitHub API 限流:认证用 token,未认证 60 次/小时根本不够;打标签用 PATCH 不是 POST
- webhook 安全:校验 GitHub 发来的
X-Hub-Signature-256,别让随便一个请求触发你的工作流