CI/CD 自动化工程指南
为项目建立可验证、可回滚的持续集成与部署流水线。
技能明确要求使用 Secrets、避免生产密钥进入 CI、配置回滚和分阶段发布,主要安全风险可见;但没有系统说明最小权限、用户确认、第三方动作固定版本、部署数据流或回滚前置条件,且示例直接将 VERCEL_TOKEN 传给 npx vercel,因此未接近满分。
流程结构连贯,包含质量门禁、失败反馈、健康检查和回滚示例;但命令依赖项目自定义 npm 脚本和未声明的工具,示例之间的门禁范围不一致(概述包含集成、E2E、包大小,基础配置未覆盖),异常输入和不可执行时的诊断反馈较薄,静态评估不超过 10 分。
目标场景和触发条件较清楚,覆盖 CI、部署、失败排查和优化;但对不同语言、CI 平台、部署平台、项目规模及不适用情况缺少边界说明,内容明显偏 Node.js/GitHub Actions,未提供中文支持或中国大陆网络可达性说明,因此适用性有限。
文档有清晰标题、流程图、配置示例、反合理化表、红旗和验证清单,仓库 README 还提供 MIT 许可、安装方式及维护者信息;但缺少该技能自身的版本、变更记录、依赖矩阵、问题排查路径和明确更新责任,且部分参数与环境假设未声明。
技能能提供可直接改造的 CI、集成测试、E2E、预览部署、分阶段发布和回滚模板,具备明显的流程指导价值;但模板需要大量项目适配,未给出多平台等价实现、部署前确认或实际产出验证,部分建议可能造成不必要的门禁和运行成本,因此只给中等偏下分数。
选定修订版中有真实 GitHub Actions 工作流,用于验证技能结构、评估运行器和插件安装;但这些测试并未覆盖该技能建议的 CI/CD 关键路径,提供的 slug 测试也与目标技能无关,缺少第三方执行结果和多来源交叉证据,故仅有限可验证性。
- 部署示例使用 Vercel、GitHub Actions 和 Node.js,使用前应确认平台、工具版本、权限范围及凭据暴露路径。
- “所有门禁不可跳过”与 E2E 标注为 optional 存在张力;应按项目风险明确哪些检查是强制项。
- 该评估仅基于静态文件阅读,未执行流水线、安装流程或部署回滚。
这个 Skill 能做什么,适合哪些场景?
该技能用于设置或修改构建、测试和部署流水线。它强调在合并前依次执行 lint、类型检查、单元测试、构建、安全审计等质量门禁,并将失败信息反馈给编码代理。内容还涵盖 GitHub Actions、数据库集成测试、E2E 测试、预览部署、功能开关、分阶段发布和回滚。它适合希望把工程检查和发布流程标准化的开发团队。
指导代理创建或调整 GitHub Actions 工作流,配置 Node.js 22、npm ci、lint、TypeScript 类型检查、单元测试、构建和 npm audit;必要时配置 PostgreSQL 服务、数据库迁移、Playwright E2E 测试及失败产物上传。它还指导设置预览部署、功能开关、staging 到 production 的分阶段发布、GitHub Secrets、Dependabot/Renovate、分支保护和手动回滚工作流。
- 开发者为新项目建立 pull request 和 main 分支上的基础 CI 流水线。
- 团队需要把 lint、类型检查、测试、构建和安全审计设为合并前的必需检查。
- 后端团队在 CI 中启动 PostgreSQL、执行 Prisma 迁移并运行集成测试。
- 前端团队为每个 PR 创建预览环境并运行 Playwright 或 Cypress E2E 测试。
- 发布负责人需要采用 staging 验证、功能开关、分批启用和可逆回滚策略。
- 团队需要诊断 CI 失败,并将具体错误输出交给编码代理修复后重新验证。
这个 Skill 有哪些优点和局限?
- 提供从质量检查到部署、监控窗口和回滚的完整流程框架。
- 包含可直接参考的 GitHub Actions YAML 示例。
- 明确要求使用 Secrets 管理 CI 凭据,并避免把生产密钥放入 CI。
- 涵盖缓存、并行任务、路径过滤和测试分片等 CI 优化策略。
- 包含失败反馈给编码代理的具体闭环模式。
- 示例主要围绕 GitHub Actions、Node.js 和 npm,其他 CI 平台未提供具体配置。
- 部署示例使用 Vercel,不能据此推断对其他部署平台有同等深度支持。
- 文档给出流程和示例,但未提供该技能自身的测试套件或运行效果证据。
- 部分做法需要项目已有 lint、测试、构建、数据库迁移或部署命令,技能不会替项目自动生成这些工具。
如何安装这个 Skill?
安装整个仓库:npx skills add addyosmani/agent-skills。只安装此技能:npx skills add addyosmani/agent-skills --skill ci-cd-and-automation。README 未说明该单个技能在每个客户端中的具体安装目录;它说明该集合可通过 skills CLI 安装到多种编码代理。
如何使用这个 Skill?
安装后,在代理中提出具体任务,例如:“为这个 Node.js 项目设置 GitHub Actions CI,包含 lint、tsc、单元测试、构建和 npm audit,并让失败检查阻止合并。”也可以请求配置 PostgreSQL 集成测试、PR 预览部署、staging 发布或回滚工作流。技能描述明确支持设置或修改构建和部署流水线,以及调试 CI 失败。
这个 Skill 与同类方案有什么区别?
README 将 Superpowers 和 Matt Pocock’s skills 列为可比较的替代方案,并链接到比较文档;所给源材料没有提供具体的横向结论。