GitHub 官方博客演示如何用 Copilot app 自动处理依赖更新的 PR 分类工作,将繁琐的库更新流程自动化,适合不熟悉该领域的开发者。
可能有失偏颇,但我觉得 Dependabot 相当厉害。它帮助我保持项目依赖的更新,确保我一直在使用安全的依赖库。但由于新漏洞层出不穷,Dependabot 发来的 pull request 也源源不断。
有时候只是小版本号更新。有时候是大版本升级。有时候一切都能正常运行。而有时候……好吧,几乎每个开发者都曾被一次 breaking change 坑过。
我们该怎么高效地整理这些 pull request?工作本身并不难,但确实非常重复。
这正是交给 Copilot 的完美任务!借助 GitHub Copilot app 的自动化功能,你可以把第一轮审查工作交接出去。无需手动检查每一个 Dependabot pull request,你可以创建一个自动化流程来审查待处理的 pull request、按风险分组、验证 CI 状态,并在一天开始前给你一份摘要。
按照以下步骤构建一个每日的 Dependabot 分类自动化。
从 GitHub Copilot app 创建一个新的自动化。
首先你需要配置两件事:
Name:给自动化起一个描述性的名字,比如 Daily Dependabot Triage。
Trigger:决定它什么时候运行。
可用的触发选项包括:
对于像 Dependabot 审查这种周期性维护任务,每日定时执行通常是不错的选择。例如,你可以安排它在工作日开始前运行,这样你登录时结果就已经在等着了。
你还可以选择自动化是在云端运行还是在本地机器上运行。
接下来,告诉 Copilot 你想让它做什么。
Review the open Dependabot pull requests, group them by risk, identify the safe patch and minor version updates, verify that CI is passing for each pull request, and provide a short summary of the recommended next steps.
由于 prompt 使用的是自然语言,你可以自定义它来匹配团队的 workflow。
选择自动化要分析的仓库或项目。
选择完仓库后,创建自动化。
如果你不想等待预定时间的运行,想立即测试,可以选择 Create and Run。
自动化执行完毕后,Copilot 返回的是摘要,而不是一长串单独的 pull request。
例如,它可能会:
与其在早晨被大量小决策打断,不如快速识别出哪些更新可以合并、哪些需要更密切的关注。
如果某个更新需要额外的工作,你可以直接从自动化结果继续。
例如,如果摘要中识别出一次重大的框架升级,你可以从结果中启动一个新的 Copilot session,让 Copilot 帮助完成迁移。
由于 session 从自动化的上下文开始,你无需再次收集信息。
每一次自动化运行都会被保存,可以轻松查看:
每次运行都有历史记录,使自动化变得透明。你可以随时审查发生了什么,而不必把它们当作黑盒。
Dependabot 分类就是一个很适合自动化的重复性任务例子。你只需描述一次 workflow,选择它什么时候运行,然后让 Copilot 自动执行重复的步骤。
如果你刚刚开始接触自动化,从你已经自动执行的任务入手。让 Copilot 处理常规工作,这样你就可以把时间花在那些真正需要你专业知识的决策上。
准备好自动化你的下一个重复任务了吗?在 GitHub Copilot app 中创建你的第一个自动化 >
GitHub Copilot app for Beginners
Senior Developer Advocate, GitHub
How to evaluate LLMs before production
These are the lessons we learned evaluating LLMs for real-world secret scanning.
GitHub Copilot app for Beginners: Managing your work
If you're juggling multiple Copilot sessions, use the My work pane to track what's in flight, what's done, and what's next.
How canvases make agentic workflows visible, steerable, and cost-efficient
Chat is great for intent, but agent work gets lost in the scroll. Here is how I use canvases with my agentic workflows—and why your workflow also deserves a canvas.