ci-cd-and-automation
左移原则、更快更安全、功能标记、质量门禁流水线。
评分明细
适用场景
ci-cd-and-automation 快速入门
让 AI 帮你设计 CI/CD 流水线时,默认按 Google 工程团队的”更快更安全”原则来。
这是什么?解决什么问题?
ci-cd-and-automation 是 addyosmani/agent-skills 仓库下的一个 Skill,作者是 Google Chrome 工程总监 Addy Osmani 团队,内容沉淀了 Google 内部多年 CI/CD 实践经验。
它解决的问题,是大多数团队 CI/CD 的几个常见痛点:
- 流水线跑得太慢:一次 PR 跑 30 分钟,反馈循环太长,大家开始”攒批”提交。
- 质量门禁形同虚设:CI 跑过但生产还是出 bug,因为流水线只跑了 unit test,没跑 lint、type check、安全扫描。
- 测试都堆在主干:“上完线再补测试”成了常态,等出 bug 再追溯已经过去 3 个月。
- 回滚困难:出问题时没有 Feature Flag 兜底,只能”硬发”或”硬回滚”,风险很大。
- 配置散落各项目:每个项目一套 GitHub Actions / GitLab CI,重复造轮子。
这个 Skill 沉淀的几个核心原则:
- 左移(Shift Left):测试、安全扫描、性能检查尽可能早地进入流水线,不要等上线前才做。
- 更快更安全(Faster and Safer):并行化、缓存、增量构建;关键步骤必须串行,质量门禁不能跳。
- Feature Flag:所有用户可见的变更必须有开关,出问题能秒级回滚而不需要重新部署。
- 质量门禁(Quality Gates):覆盖率、lint、type check、SAST 扫描未通过,直接拒绝合并。
它适合的场景:搭建新项目的 CI/CD、重构老的慢流水线、引入安全扫描与依赖审计、推行 Feature Flag 文化。
准备工作
- 一个支持 Skill 加载的 AI 编程助手(Claude Code / Cursor)。
- 项目已经在 GitHub / GitLab / Bitbucket 上托管。
- Clone 仓库:
git clone https://github.com/addyosmani/agent-skills.git - 软链 Skill:
ln -s agent-skills/skills/ci-cd-and-automation ~/.claude/skills/ci-cd-and-automation
3 步快速上手
第 1 步:安装 Skill
重启 AI 助手,Skill 生效。
第 2 步:验证安装
向 AI 发送请求:
“用 ci-cd-and-automation 给我一份 GitHub Actions 配置,要求并行跑 lint / type check / unit test,任一失败就拒绝合并。”
如果 AI 输出的 yaml 里有 concurrency 字段、matrix 策略、明确的 if: failure() 兜底,说明 Skill 加载成功。
第 3 步:用 ci-cd-and-automation 跑第一个任务
让 AI 帮你给一个 Node.js 项目写 .github/workflows/ci.yml:
title: CI
on:
pull_request:
push:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true # 新 push 自动取消旧 CI,节省资源
jobs:
quality-gates:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
- run: npm ci
- name: Lint
run: npm run lint
- name: Type Check
run: npm run typecheck
- name: Unit Test
run: npm test -- --coverage
- name: Coverage Gate
run: |
COVERAGE=$(cat coverage/coverage-summary.json | jq .total.lines.pct)
if (( $(echo "$COVERAGE < 80" | bc -l) )); then
echo "Coverage $COVERAGE% < 80%, failing the build"
exit 1
fi
security-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Audit dependencies
run: npm audit --audit-level=high
- name: SAST with Semgrep
uses: returntocorp/semgrep-action@v1
with:
config: >-
p/security-audit
p/owasp-top-ten
Skill 会主动提醒 AI:
concurrency.cancel-in-progress: true节省 CI 资源。- Lint / Type Check / Test 完全可以并行。
- 覆盖率门禁写在 CI 里,而不是靠人 review。
- 依赖审计 + SAST 扫描,安全左移。
常见踩坑
- 流水线串行执行。Lint、Test、Build 串行跑要 20 分钟,改成并行后 5 分钟搞定。Skill 强调并行优先。
- 没设 concurrency cancel。开发 push 10 次,CI 跑 10 遍,严重浪费资源。
- 缓存没配。
actions/setup-node@v4一定要加cache: 'npm',否则每次都重新npm install,慢 3-5 倍。 - 覆盖率门禁只挂在主分支。应该在 PR 阶段就检查,不要等合并后才发现覆盖率掉到 50%。
- Feature Flag 缺失。上完线才发现有 bug,回滚要重新构建部署,等 10 分钟。Skill 强调”feature 必带 flag”。
- 质量门禁可绕过。紧急修复时直接 force push 跳过 CI,这种”救命通道”是技术债的源头。Skill 建议加 PR label 审批机制。
初级用法
用法 1:写一份 PR 阶段的 CI。让 AI 帮你配 lint + type check + unit test + 覆盖率门禁,标准 4 件套。
用法 2:配 main 分支的 CD。让 AI 帮你配”合并到 main 自动部署 staging → 手动审批后部署生产”的标准流程。
用法 3:加 SAST 扫描。让 AI 帮你集成 Semgrep / CodeQL / SonarQube,把安全问题左移到 PR 阶段。
高级玩法
玩法 1:Blue-Green 部署。让 AI 帮你配 K8s / Cloud Run 的蓝绿部署,新版本先在 green 环境跑 smoke test,通过后切流量,出问题秒级切回 blue。
玩法 2:Canary 发布。让 AI 帮你配”5% → 25% → 50% → 100%“的金丝雀发布,每个阶段配监控指标,不达标自动回滚。
玩法 3:可重现构建(SLSA)。让 AI 帮你配 SLSA L3 级别的供应链安全,所有构建产物有 provenance 签名,防止依赖被投毒。
小技巧
- 用
act本地跑 GitHub Actions。act -j build在本地 docker 容器里跑 workflow,提交前就能验证配置,减少 CI 反复调试。 - 流水线加
timeout-minutes。默认 6 小时太长,显式声明timeout-minutes: 15,卡死的 job 不会无限挂起。 - 缓存 node_modules / pip cache。
actions/cache@v4配 key:${{ hashFiles('**/package-lock.json') }},依赖安装提速 80%。 - PR 标题用 Conventional Commits。
feat:fix:chore:前缀,自动生成 CHANGELOG,Skill 强调”提交即文档”。 - 监控 CI 时长。把”流水线平均耗时”做成 dashboard,超过阈值就告警,避免 CI 慢慢变慢没人察觉。
常见问题 FAQ
Q1: 这个 Skill 跟 ci-cd-and-automation 有什么关系?必须装吗?
A: Skill 是给 AI Agent 用的”技能包”,能告诉 Agent 怎么按特定规范工作。不是必须装——如果你的项目规模小、要求不高,不装也能用。但装上能让 Agent 输出的质量更高、更符合最佳实践,推荐装。
Q2: 这个 Skill 适合哪些 AI Agent?Cursor?Claude Code?其他?
A: ci-cd-and-automation 来自 Google,主要面向支持 Skill 机制的 Agent。常见兼容 Agent 包括 Claude Code、Cursor、OpenCode、Windsurf 等。具体兼容性请查 Skill 官方文档。
Q3: 装了这个 Skill 后,会拖慢 Agent 响应吗?
A: 会的——Skill 通常会增加 prompt 长度,导致响应变慢、token 消耗增加。但质量提升明显。建议:1) 只装项目必需的 Skill;2) 用 Skill 启动/加载/卸载机制按需加载;3) 定期清理不用的 Skill。
Q4: 怎么验证 Skill 装对了?
A: 在 Agent 中输入”列出已加载的 Skill”或类似命令。如果 Skill 出现在列表里,说明装对了。然后用 Skill 跑一个相关任务,看输出是否符合 Skill 规范。
Q5: 这个 Skill 有许可证吗?能商用吗?
A: 取决于 ci-cd-and-automation 的许可证。常见许可证包括 MIT(完全自由)、Apache-2.0(自由但有专利条款)、源可用(可看不能用)、GPL(强开源)。商用前请查仓库 LICENSE 文件。
进阶学习建议
如果想进一步用好 ci-cd-and-automation,建议按以下路径学习:
第 1 周:熟练使用
- 完成 3 步快速上手,跑通第一个任务
- 试 2-3 个不同场景的真实任务
- 记录”哪些 prompt 有效、哪些没用”——形成自己的 prompt 笔记
第 2 周:理解机制
- 阅读 Skill 的官方文档(README、SKILL.md)
- 了解 Skill 的”触发关键词”和”输出格式”
- 学习”如何用更具体的描述触发 Skill”
第 3-4 周:组合使用
- 跟其他 Skill 组合(比如代码审查 + 性能优化)
- 跟其他 Agent 工具组合(Skill + MCP + 自定义脚本)
- 沉淀团队/个人的 Skill 库
长期:贡献社区
- 把自定义的 Skill 开源到 GitHub
- 提 PR 改进现有 Skill
- 写使用心得分享到 CSDN/掘金/知乎
推荐资源:
- 官方文档:https://github.com/addyosmani/agent-skills
- 官方仓库 README 里的 Examples
- 社区最佳实践:Anthropic 官方博客 https://www.anthropic.com/blog
- 国内社区:CSDN AI 板块、掘金 AI 板块
避免的坑:
- 不要装太多 Skill(超过 10 个会拖慢 Agent)
- 不要把 Skill 装在不兼容的 Agent 上
- 不要直接复制 Skill 默认 prompt——要根据项目调整
- 定期 review Skill 库的实用性,清理不用的
参考链接
- ci-cd-and-automation 仓库:https://github.com/addyosmani/agent-skills
- Skill 路径:https://github.com/addyosmani/agent-skills/tree/main/skills/ci-cd-and-automation
- GitHub Actions 官方文档:https://docs.github.com/en/actions
- Google SLSA 供应链安全:https://slsa.dev/
- Feature Flag 工具 LaunchDarkly:https://launchdarkly.com/
- Conventional Commits 规范:https://www.conventionalcommits.org/
本文基于官方文档和公开资料整理,AI辅助生成,MagicNetWorld 尚未完成独立实测。如有错误或过时信息,请通过 contact@magicnetworld.com 反馈。
ci-cd-and-automation Skill 多维度简评
类别:工程方法 来源:addyosmani/agent-skills 定位:CI/CD 流水线自动化——为 AI 编码 Agent 提供 GitHub Actions 配置、缓存优化、并行测试和部署策略。
说明:本文基于官方文档和公开资料整理,未经过 MagicNetWorld 实测。
一、核心定位与价值
ci-cd-and-automation 是 Addy Osmani 发布的 agent-skills 仓库中的 Skill 之一。Addy Osmani 是 Google Chrome 团队工程总监,在软件工程和前端领域具有丰富的经验。
agent-skills 仓库在 GitHub 上获得 50,000+ stars,收录了 22 个工程方法 Skill,涵盖需求精炼、任务拆分、测试驱动开发、上下文工程、API 设计、代码审查、安全加固、性能优化、CI/CD 自动化、React 最佳实践等领域。
该 Skill 的核心理念是:CI/CD 是所有其他 Skill 的执行机制——它能在每一次代码变更时自动执行 lint、类型检查、测试、构建和安全审计,捕获人类和 Agent 都可能遗漏的问题。
Addy Osmani 有一句代表性表述:“Engineering excellence is the sum of small disciplined decisions. AI agents should help, not replace, those decisions.”(工程卓越是小而严格决策的累积。AI Agent 应辅助这些决策,而非取代它们。)
核心价值:将 CI/CD 流水线作为质量门禁机制,确保任何代码变更在进入生产环境前都经过标准化验证。
二、核心能力
| 能力 | 说明 |
|---|---|
| GitHub Actions 配置 | 自动生成和优化 CI 工作流 |
| 缓存策略 | npm/pip/go mod 等依赖缓存,加速流水线 |
| Matrix 测试 | 多 Node/Python/OS 版本并行测试矩阵 |
| 制品管理 | Build artifacts 的存储、版本管理和发布 |
| 自动回滚 | 生产部署失败时的自动回滚策略 |
| 质量门禁管线 | lint → type-check → test → build → security → bundle-size |
三、22 Skill 全景
Addy Osmani 的 agent-skills 按功能分组:
基础(3):idea-refine、planning-and-task-breakdown、incremental-implementation
开发(8):TDD、context-engineering、source-driven-development、doubt-driven-development、frontend-ui-engineering、api-and-interface-design、browser-testing-with-devtools、debugging-and-error-recovery
质量(4):code-review-and-quality、code-simplification、security-and-hardening、performance-optimization
工程化(3):git-workflow-and-versioning、ci-cd-and-automation、deprecation-and-migration
流程(4):documentation-and-adrs、shipping-and-launch、react-best-practices、vercel-deploy-claimable
四、安装与使用
# 通过 npx 安装
npx skills add addyosmani/agent-skills --skill ci-cd-and-automation
# 或手动克隆
git clone https://github.com/addyosmani/agent-skills
五、使用场景
- 新项目 CI 搭建:让 Agent 根据项目技术栈自动生成完整的 GitHub Actions 配置
- 流水线优化:分析现有 CI 耗时,优化缓存、并行和 job 依赖
- 质量门禁扩展:在现有 CI 中增加安全扫描、bundle size 检查等步骤
- 部署策略配置:设置蓝绿部署、金丝雀发布或自动回滚
六、Addy Osmani 设计哲学
- 小颗粒度:每个 Skill 只解决一个明确问题
- 可组合:Skill 之间可链式调用(如 idea-refine → ci-cd-and-automation)
- 强制规范:不绕过 CI,绕过即不合格
- 人机协作:AI 加速执行,人做最终决策
七、注意事项
- 该 Skill 默认面向 GitHub Actions,其他 CI 平台需相应调整
- CI 配置涉及项目机密信息(如 npm token、deploy key),需使用 GitHub Secrets 管理
- Addy Osmani 推荐必装优先级:idea-refine → planning → TDD → context-engineering → code-review → git-workflow
参考资料
- addyosmani/agent-skills 官方仓库 — GitHub
- ci-cd-and-automation SKILL.md — 源文件
- Addy Osmani 个人博客 — 作者博客
- SkillsMP - ci-cd-and-automation — Skill 详情
- LobeHub - ci-cd-and-automation — Skill 目录
快速安装
git clone https://github.com/addyosmani/agent-skills.git ln -s agent-skills/skills/ci-cd-and-automation ~/.claude/skills/ci-cd-and-automation