SuperAPI AI 工具集

debug-ci-failures

测试与质量

查看项目

更新于 10-15 20:12

技能介绍

用途:帮助用户系统化诊断并修复 CircleCI 构建失败,分析测试结果,识别 flaky 测试。

前提:必须已配置名为 circleci-mcp-server 的 CircleCI MCP 服务器,否则需先添加该服务器。CircleCI MCP 工具为延迟加载,需先用 ToolSearch 以查询 +circleci 发现并加载,并确认技能允许的工具可用。

主要流程:

  1. 识别项目:优先从本地 git 仓库推断,使用 git remote get-url origin 与 git branch --show-current;其次使用用户提供的 CircleCI URL;否则用 mcp__circleci-mcp-server__list_followed_projects 让用户选择。
  2. 检查流水线状态:用 mcp__circleci-mcp-server__get_latest_pipeline_status 快速判断通过、运行中或失败,避免无谓拉取日志。
  3. 获取失败日志:用 mcp__circleci-mcp-server__get_build_failure_logs,按本地上下文传 workspaceRoot、gitRemoteURL、branch,或传 url,或传 projectSlug 与 branch。
  4. 检查 flaky 测试:用 mcp__circleci-mcp-server__find_flaky_tests 区分真实失败与间歇性问题。
  5. 获取测试详情:用 mcp__circleci-mcp-server__get_job_test_results,调查失败时始终设置 filterByTestsResult: 'failure'。
  6. 分析与诊断:直接在回复中分析输出,不写脚本或临时文件。若出现 MCPTruncationWarning,依次尝试缩小到具体 job 的 URL、仅过滤失败、或询问用户聚焦目标。给出根因分析、flaky 测试识别、修复建议,并可查看本地源码给出针对性建议。
  7. 后续操作:可查看相关源码、协助修复、或在疑似 flaky 时用 mcp__circleci-mcp-server__rerun_workflow 重跑,传 workflowId 并设 fromFailed: true 仅从失败 job 重跑。

限制:依赖 CircleCI MCP 服务器与相应工具;数据过大时可能截断;具体收费、价格与平台支持情况暂未提供。