📦 Github Actions Optimizer — Github Actions 优化器

v1.0.0

优化 GitHub Actions 工作流的速度、成本、安全性与可靠性——分析运行时间、缓存策略、作业并行度与 runner 选择。

0· 27·0 当前·0 累计
0

运行时依赖

无特殊依赖

版本

latestv1.0.0

Fix: `paths-ignore: ['docs/**', '*.md', 'LICENSE']`

安装命令

点击复制
官方npx clawhub@latest install github-actions-optimizer
镜像加速npx clawhub@latest install github-actions-optimizer --registry https://cn.longxiaskill.com

技能文档

GitHub Actions Optimizer 分析并优化 GitHub Actions 工作流,实现更快构建、更低成本、更高安全性与可靠性。 审查工作流文件、运行历史、缓存使用及 Runner 配置。 适用于 CI 慢、贵、不稳定时。

用法 “优化我的 GitHub Actions 工作流” “为什么 CI 构建这么慢?” “审计工作流的安全问题” “降低 GitHub Actions 成本” “找出 CI 流水线中的 flaky 步骤”

工作原理

  • 工作流发现
# 查找所有工作流文件 find .github/workflows -name ".yml" -o -name ".yaml" 2>/dev/null # 查看近期运行耗时 gh run list --limit 20 --json name,status,conclusion,startedAt,updatedAt,databaseId | python3 -c "..."

  • 速度优化
缓存分析:依赖是否缓存?缓存命中率、缺失键、容量接近 10 GB? 任务并行:可并行顺序任务、大矩阵拆分、测试分片。 Runner 优化:自托管 vs GitHub 托管、大规格 Runner、ARM Runner(省 30%)。 构建优化:全历史检出、冗余安装、无层缓存 Docker、缺失路径过滤。

  • 成本削减
分钟节省:高耗时高频次工作流、缺失超时(默认 6h)、并发组取消、路径过滤。 存储节省:默认 90 天保留、大制品上传、缓存未清理。

  • 安全审计
固定版本:@v3 → SHA pinning。 Secret 暴露、GITHUB_TOKEN 权限过宽、pull_request_target 风险、脚本注入、第三方 Action 权限、环境保护规则。

  • 可靠性
重试策略、超时设置、错误处理、状态检查、并发竞争。

  • 现代模式
推荐:可复用工作流、复合 Action、环境部署保护、OIDC 云认证、Merge queues。

输出

GitHub Actions 优化报告

工作流:5 条 | 月均分钟:12,400 | 月费用:约 $99

⚡ 提速

  • 添加依赖缓存 — ci.yml
当前:npm ci 每次全新 2 m 15 s 修复:actions/setup-node 加 cache: 'npm' 节省:~1 m 45 s × 180 次/月 = 315 min/月

  • 并行测试 — ci.yml
当前:单线程 18 min 修复:拆 3 并行任务 → 6 min 节省:12 min/次

  • 路径过滤 — ci.yml
当前:任何推送都触发 修复:忽略 docs、*.md 节省:~40 次无效 × 18 min = 720 min/月

🔐 安全问题

  • 未固定版本 — deploy.yml:12
actions/checkout@v4 → 固定 SHA
  • 脚本注入 — pr-comment.yml:8
用环境变量替代直接 echo
  • GITHUB_TOKEN 权限过宽 → 显式只读

💰 成本节省

| 优化项 | 月省分钟 | 月省 $ | |---|---|---| | 依赖缓存 | 315 | $2.52 | | 路径过滤 | 720 | $5.76 | | 并发取消 | 200 | $1.60 | | 超时 6h→30m | 防惊喜 | — | | 合计 | 1,235 | $9.88 |

预计:12,400 → 11,165 min(-10%)

数据来源ClawHub ↗ · 中文优化:龙虾技能库