CI Whisperer

🔧 一键诊断 CI 失败,自动生成修复 PR

自动分析 GitHub Actions 失败原因并生成修复方案,支持只读诊断和可选的自动 PR 修复,由资深工程师设计的安全 CI 调试助手。

收藏
4k
安装
1.1k
版本
0.2.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

CI Whisperer 是一款面向开发团队的 GitHub Actions 故障诊断技能,通过 CLI 工具和 GitHub API 自动化提取 CI 失败证据并输出结构化分析报告。

触发场景:用户分享失败的工作流 URL/run ID、提及"CI 挂了"、询问失败原因、请求日志摘要或最小修复方案、要求自动生成修复 PR。

双模式设计

  • 只读模式(默认):收集证据、定位根因、提出修复建议,绝不执行任何写操作
  • PR 修复模式(显式双授权):需同时满足用户明确要求 + 环境变量 CI_WHISPERER_WRITE=1 启用

执行流程
1. 目标识别 — 解析 owner/repo、run ID(支持 URL/ID/PR 号多种输入)

2. 证据采集 — 调用 gh run view 获取状态、时间戳、分支、提交等元数据;--log-failed 提取失败日志

3. CI 验尸报告 — 输出:失败作业/步骤、错误摘录(自动脱敏)、分级根因分析、最小修复选项、置信度评估

4. 可选修复 — 创建分支→应用变更→本地验证→提交 PR(仅写模式)

显著优点

  • 确定性工具链:优先使用 /usr/bin/gh 官方 CLI,避免非标准解析
  • 安全纵深防御:双因素授权(口头+环境变量)才能开启写模式;默认只读杜绝误操作
  • 脱敏处理:日志中的 secrets 自动红码;token 绝不打印
  • 工程化交付:"CI 验尸"隐喻降低沟通成本,输出结构符合资深工程师诊断习惯

潜在局限

  • 依赖本地 gh 认证状态,未登录时需用户手动介入
  • 复杂多作业失败场景下,--log-failed 可能遗漏非主因错误
  • 自动 PR 模式需预置本地 lint/test 环境,否则跳过验证步骤
  • 不支持非 GitHub Actions 的 CI 系统(Jenkins/GitLab CI 等)

适合人群

  • 频繁处理 CI 失败的工程团队
  • 需要快速交接故障上下文的技术负责人
  • 追求"最小修复"原则以减少回归风险的开发者

常规风险

  • 认证泄露gh 凭证需妥善保管,技能本身不存储 token
  • 日志脱敏盲点:自定义 secret 命名模式可能逃过红码规则
  • 写模式误启:环境变量配置失误可能导致非预期 PR 创建,建议生产环境默认 CI_WHISPERER_WRITE=0

CI Whisperer 内容

references文件夹
scripts文件夹
手动下载zip · 4.4 kB
config.mdtext/markdown
请选择文件