💻
难度:中等用 Copilot 动态工作流固定事故排查步骤
把「拉日志 → 并行分析 → 交叉验证 → 出时间线」写成可复用的动态工作流,每次事故按同一套步骤跑,而不是靠现场发挥。
适用工具:GitHub Copilot
标签:#动态工作流#事故排查#多 Agent#Copilot CLI#可复用流程
📝 操作步骤
- 1动态工作流目前是公开预览。GitHub Copilot 应用里默认可用;Copilot CLI 需要先开实验功能:启动时加 --experimental,或在会话里输入 /experimental on,并用 /update 升到最新版
- 2在 Copilot 会话里用自然语言描述要固定的流程:目标、步骤顺序、哪些段交给 Agent 判断、并行还是串行、以及用量上限。例如「建一个名叫 incident-timeline 的动态工作流:先收集日志和指标,再派两个 Agent 分别看服务和依赖,交叉验证后合成时间线和根因」
- 3按提示允许它编写并注册工作流。完成后问 What dynamic workflows are available? 确认名字已经出现。这一步只是创建,不会马上开跑
- 4要跑的时候直接点名,并补上输入和上限,例如「对当前目录跑 incident-timeline,AI credit 上限 500」。也可以在终端执行 copilot workflow run incident-timeline,用 --args 传 JSON 输入。命令行不会再弹权限确认,需要的工具和网址权限要提前用 --allow-tool / --allow-url 批好
- 5CLI 里用 /workflows 看进度、阶段、子 Agent 数量和已用额度,P 暂停、X 取消、R 恢复。应用里点提示框上方的 Workflows。取消的不能恢复;碰到上限停下的,把上限调高后再 Resume
- 6当前会话里创建的工作流默认只在这次会话有效。要自己以后都能用,让 Copilot 把它拷到个人扩展目录;要给同事用,拷到仓库的 .github/extensions/ 并合并。之后也可以用 /every 1d 按天复跑
💡 示例提示词
请创建一个名为 incident-timeline 的动态工作流,放到当前仓库的项目扩展里,先不要开跑。 流程必须按代码固定,不要每次靠临场发挥: 1)收集阶段:拉取指定服务最近 2 小时的日志、错误率和延迟,以及相关部署记录 2)并行分析:开两个互相看不到对方结论的 Agent,一个看本服务,一个看下游依赖 3)交叉验证:只有两边都指向同一类原因时,才写入「高置信根因」;对不上就标成「待确认」并列出分歧 4)输出:一份时间线 + 根因报告,包含时间戳、影响面、建议的下一步。中途设检查点,等我看过再继续 约束:只读日志和仓库,不要改代码、不要重启服务。默认 AI credit 上限 400,我没改口就不要突破。创建完成后列出已注册的动态工作流,等我确认再跑。