GitHub Actions 工作流生成器
根据您的技术栈和选项,生成可直接提交的 GitHub Actions CI 工作流(.github/workflows/*.yml)——可选择语言(Node.js、Python、Go、Rust、PHP、Ruby、Java 或 .NET)、版本与操作系统矩阵、触发事件(push / pull_request / schedule / workflow_dispatch)、lint/test/build 步骤、可选的部署任务、依赖缓存和并发控制。完全在您的浏览器中运行。
输入
工作流在 Actions 标签页中显示的名称。
矩阵使用的运行时版本,用逗号分隔(例如 Node 20, 22)。
触发条件
用逗号分隔,推送到这些分支时触发工作流。
拉取请求必须指向的分支。
任务步骤
矩阵使用的运行器标签,用逗号分隔(例如 ubuntu-latest, macos-latest, windows-latest)。
留空则使用适合所选技术栈的默认命令。
其他选项
工作流级别的环境变量。使用 ${{ secrets.NAME }} 引用机密。
输出
使用此工具的更多方式
REST API
curl -X POST https://api.iotools.cloud/v1/tool/github-actions-workflow-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflowName": "CI",
"stack": "node",
"stackVersions": "20, 22",
"packageManager": "npm",
"triggerPush": "true",
"pushBranches": "main",
"triggerPR": "true",
"pRBranches": "main",
"triggerSchedule": "",
"triggerDispatch": "true",
"matrixOS": "ubuntu-latest",
"stepLint": "",
"stepTest": "true",
"testCommand": "",
"stepBuild": "",
"stepDeploy": "",
"enableCache": "true",
"enableConcurrency": "true",
"envVars": ""
}'替换成您账户中的密钥。工具的字段即为请求体——没有额外包装。
让 AI 代理执行
Use the IOTools `github-actions-workflow-generator` tool (GitHub Actions Workflow Generator) on this input:
YOUR_INPUT_HERE将此粘贴给任何已连接 IOTools MCP 服务器的代理,再加上您的输入内容。
嵌入式小组件
<iframe
src="https://iotools.cloud/embed/github-actions-workflow-generator/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="GitHub Actions 工作流生成器 — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>把它放到您自己的页面上——免费,无需密钥,只需保留一个反向链接。
| 每次 API/MCP 调用费用 | 5 积分起 |
|---|---|
| 需要更多积分? | 查看定价 |
也可通过
使用指南
GitHub Actions 工作流生成器可以为您的代码仓库生成一份可直接提交的 CI 流水线。选择编程语言,指定哪些事件触发运行,再勾选需要的步骤,工具就会写出格式正确的 .github/workflows/ci.yml,几秒钟内即可复制或下载。无需账号,无需命令行,也不必与 YAML 较劲。
生成的内容
输出是一份完整的 GitHub Actions 工作流,其中的 build 作业会在操作系统和运行时版本矩阵上运行。它会为您的技术栈接入正确的官方 setup 动作,使用您选择的包管理器安装依赖,并且只添加您启用的步骤:lint、test 和 build。可选的第二个 deploy 作业会在构建通过后运行,且只限于一个分支。
支持的技术栈:
- Node.js —
actions/setup-node,可选 npm、yarn 或 pnpm - Python —
actions/setup-python,可选 pip、Poetry 或 Pipenv - Go —
actions/setup-go,带模块缓存 - Rust —
dtolnay/rust-toolchain加Swatinem/rust-cache - PHP —
shivammathur/setup-php - Ruby —
ruby/setup-ruby,带 bundler 缓存 - Java —
actions/setup-java,支持 Temurin/Zulu/Adopt/Microsoft/Corretto,可选 Maven 或 Gradle - .NET —
actions/setup-dotnet
使用方法
- 输入工作流名称(会显示在 Actions 标签页中),并选择您的技术栈。
- 列出构建矩阵的运行时版本和操作系统,每种组合都会并行运行。
- 选择您的触发条件:push、pull_request(可指定目标分支)、cron 定时计划,和/或手动的
workflow_dispatch。 - 开启或关闭 lint / test / build 步骤。命令框留空时会使用适合您技术栈的默认命令,您也可以输入自己的命令。
- 可选:添加绑定到某个分支的部署作业,启用依赖缓存,并开启 concurrency,使新的推送取消同一引用上仍在进行的运行。
- 复制 YAML 或下载
ci.yml,放入代码仓库的.github/workflows/目录。
为什么要使用构建矩阵?
矩阵会为每种版本与操作系统的组合各运行一次作业。例如,在 Ubuntu 和 macOS 上同时运行 Node 20 和 22。这样可以及早发现特定版本或平台上的问题。已设置 fail-fast: false,因此某个失败的组合不会取消其他组合,每次运行都能看到完整结果。
concurrency 有什么作用?
concurrency 配置块会按工作流和引用对运行进行分组,当更新的提交到达时,取消仍在进行中的旧运行。这样可以节省运行器时间,并确保在繁忙的分支上只有最新提交的结果才有意义。
我的输入会被保密吗?
会。工作流完全在您的浏览器中通过简单的字符串模板生成,不会上传、记录或发送到任何服务器。请使用 ${{ secrets.NAME }} 在环境变量中安全地引用机密,生成器永远不会看到它们的值。
可以编辑生成的结果吗?
当然可以。生成的文件是普通的、符合规范的工作流。把它当作起点,随着项目发展,您可以调整动作版本、添加作业,或接入部署凭据。