跳转到主要内容
将 CI 失败修复 模式扩展到 CircleCI。当 CircleCI 工作流程在拉取请求中失败时,此自动化会启动一个包含完整流水线上下文的 Devin 会话——Devin 使用 CircleCI MCP 拉取作业日志、测试报告和构建产物输出,然后将针对性的修复 commit 推送到同一分支。

使用此模板

在 Devin 中打开 CircleCI 失败修复,按默认配置创建此自动化。你也可以在保存前自定义配置。

此自动化会执行什么操作

CircleCI MCP 让 Devin 与你的 CI 深度集成——获取的不只是成功/失败状态,还包括完整日志流、测试结果、工件和配置。这就是“某个测试失败了”和“第 47 行的这个断言失败了,因为预期字符串在上周发生了变化”之间的区别。Devin 会利用这些上下文,一次性提交真正有效的修复。

工作原理

触发器GitHub 事件check.run
  • 事件github:check_run
    • 条件
      • action eq completed
      • check_run.conclusion eq failure
      • check_run.name contains circleci
      • repository.full_name eq your-org/your-repo
Devin 会执行的操作:基于完整的事件上下文启动会话,执行下方提示,并可在失败时通知你。

前提条件

示例提示

该模板自带以下提示。点击 使用模板 后,你可以对其进行编辑,也可以保持不变。

设置方法

  1. 在 Devin 中打开 Automations → Templates
  2. 点击 CircleCI Failure Fix。系统会打开创建页面,并预先填充此模板。
  3. 连接所有必需的集成,如果你还未安装 MCP 服务器,也请先完成安装。
  4. 替换触发条件中的所有占位值 (例如,将 your-org/your-repo 替换为你的实际 repo) 。
  5. 查看提示,并根据你团队的语言习惯、规范和护栏进行调整。
  6. 点击 创建自动化
大多数自动化模板都包含建议的 ACU 和调用次数限制,用于在早期 rollout 阶段控制成本。在你对自动化的行为有足够把握之前,请保持这些设置不变;之后再根据你的工作负载提高限制。

何时使用此模板

  • 使用 CircleCI,且希望采用与 GitHub Actions 用户相同自动修复模式的团队
  • 涉及多作业编排的复杂 CircleCI 工作流程
  • 减少维护遗留 CI 流水线处于正常状态的阻力
  • 在大规模重构期间自动为开发者扫清阻碍

自定义建议

  • 将范围限定到特定流水线或分支
  • 根据流水线的典型复杂度调整 ACU 上限
  • 跳过由机器人创建的提交,以避免陷入修复循环
  • SonarQube Quality Gate Fix 结合使用,实现全面的质量自动化

另请参阅