SuperAPI AI 工具集

github-actions-creator

部署与运维

查看项目

更新于 10-15 12:38

技能介绍

用途

GitHub Actions Creator 是一个用于创建、生成或设置 GitHub Actions 工作流的技能。当用户提出创建 GitHub Action 的需求时,它会按照结构化流程输出生产就绪的工作流文件。

主要能力

该技能覆盖多种常见工作流场景:

  • CI(测试 + 代码检查):触发条件为 pull_request 与 push 到 main,包含 lint、test 等并行任务,支持依赖缓存与多版本矩阵测试。
  • 部署:触发条件为 push 到 main 或发布标签,任务按 test → build → deploy 顺序执行,支持环境防护、凭据密钥与状态检查。
  • 发布 / 发布包:触发条件为匹配 v* 的标签推送或 workflow_dispatch,任务包含 test → build → publish → 创建 GitHub Release,支持变更日志生成、制品上传以及 npm/PyPI/Docker 发布。
  • 定时任务:使用 cron 表达式触发,同时支持 workflow_dispatch 手动触发与失败通知。
  • 安全扫描:触发条件为 pull_request 与每周定时,包含依赖审计、SAST、密钥扫描,支持将 SARIF 上传到 GitHub Security 标签页并在严重问题时失败。
  • Docker 构建与推送:触发条件为 push 到 main 与标签,包含 build → push 到注册表,支持多平台构建、层缓存与镜像标签策略。

使用方式

技能定义了明确的工作流创建流程:

第 1 步:分析项目。 在编写任何 YAML 之前,扫描项目以理解技术栈。检查语言/框架指示文件(package.json、requirements.txt、pyproject.toml、setup.py、go.mod、Cargo.toml、pom.xml、build.gradle、Gemfile、composer.json、pubspec.yaml、Package.swift、.csproj、.sln 等);检查现有 CI/CD(.github/workflows/、Dockerfile、docker-compose.yml、vercel.json、netlify.toml、terraform/、pulumi/);检查工具链(.eslintrc*、eslint.config.、prettier、jest.config*、vitest.config*、pytest.ini、.env.example、Makefile)。

第 2 步:按需提出澄清问题。 如果用户请求含糊,只问一个聚焦的问题。例如“创建 CI 流水线”可追问“只运行测试,还是也做 lint 和类型检查?”;“添加部署”可追问“部署到哪里?(Vercel、AWS、GCP、Docker Hub 等)”;“设置测试”可追问“测试只在 PR 上运行,还是 push 到 main 时也运行?”如果意图明确,则跳过此步。

第 3 步:生成工作流。 创建 .github/workflows/{name}.yml 文件,遵循文件命名、YAML 结构规则与安全最佳实践。

生成后需提供:工作流功能的一段话总结、需要配置的密钥列表、需要的非默认仓库权限、以及如何触发测试(push、创建 PR、手动 dispatch)。

适用场景

适用于需要为项目快速搭建 GitHub Actions 工作流的开发者,尤其是希望获得符合安全最佳实践、包含缓存与矩阵测试配置的生产级 YAML 文件的场景。技能内置了常用 Action 参考(如 actions/checkout@v4、actions/setup-node@v4、docker/build-push-action@v6、github/codeql-action/analyze@v3 等)、缓存策略(Node.js、Python、Go、Rust、Docker)、矩阵测试模式与 cron 语法速查。

限制

该技能主要面向 GitHub Actions 工作流的生成与配置,不涉及其他 CI/CD 平台。生成的工作流需要用户自行在仓库中配置相应的密钥与权限。具体支持的语言、框架与部署目标以技能文档中列出的指示文件与 Action 为准,未列出的场景暂未提供明确说明。