Loading...
Loading...
Set up CI/CD workflows via interactive questionnaire — unit tests, build, coverage, linting, deploy, and custom actions
npx skill4agent add zhengxuyu/zforge setup-cigit checkout main && git pullgit worktree add .claude/worktrees/chore-setup-ci -b chore/setup-ci
cd .claude/worktrees/chore-setup-cipackage.jsonpyproject.tomlsetup.pyrequirements.txtCargo.tomlgo.modpom.xmlbuild.gradleGemfilescripts.build.github/workflows/workspacesturbo.jsonnx.jsonlerna.json| # | Question | Options |
|---|---|---|
| A1 | Trigger branches — which branches should trigger CI? | |
| A2 | Node/Python/Go version(s) — which version(s) to test against? | single version / matrix (e.g., 3.11, 3.12, 3.13) |
| A3 | OS matrix — which OS to run on? | ubuntu-latest only / ubuntu + macos / ubuntu + macos + windows |
| # | Question | Options |
|---|---|---|
| B1 | Unit tests — enable? | yes / no |
| B2 | Test command — what runs your tests? | auto-detected or custom |
| B3 | Coverage check — enable minimum coverage threshold? | no / yes → ask threshold (e.g., 80%) |
| B4 | Coverage tool — which tool? | auto-detect (coverage.py, istanbul/c8, tarpaulin, etc.) or custom |
| B5 | Upload coverage report? — to Codecov, Coveralls, or artifact? | none / codecov / coveralls / artifact |
| # | Question | Options |
|---|---|---|
| C1 | Build step — enable? | yes / no / not applicable |
| C2 | Build command | auto-detected or custom |
| C3 | Linting — enable? | yes / no |
| C4 | Lint command | auto-detected (eslint, ruff, clippy, golangci-lint, etc.) or custom |
| C5 | Type checking — enable? | yes / no (for TS: tsc --noEmit, Python: mypy/pyright, etc.) |
| C6 | Format check — enable? | yes / no (prettier, black, rustfmt, gofmt, etc.) |
| # | Question | Options |
|---|---|---|
| D1 | Dependency audit — check for known vulnerabilities? | yes / no |
| D2 | Secret scanning — add trufflehog or gitleaks? | yes / no |
| D3 | SAST — static analysis (CodeQL, semgrep)? | none / codeql / semgrep / custom |
| # | Question | Options |
|---|---|---|
| E1 | Auto-deploy — deploy on merge to main? | no / yes → ask target |
| E2 | Deploy target | Vercel / Netlify / AWS / GCP / Fly.io / Docker registry / npm publish / PyPI publish / custom |
| E3 | Preview deploys — on PR? | yes / no |
| E4 | Release automation — auto-create GitHub release on tag? | yes / no |
| # | Question | Options |
|---|---|---|
| F1 | Additional workflows — anything else you need? | free text — user describes custom needs |
.github/workflows/ci.yml.github/workflows/deploy.yml.github/workflows/security.ymlname: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up <runtime>
uses: actions/setup-<runtime>@v5
with:
<runtime>-version: '<version>'
- name: Install dependencies
run: <install-command>
- name: Lint
run: <lint-command>
- name: Type check
run: <typecheck-command>
- name: Test
run: <test-command>
- name: Coverage check
run: <coverage-command>
# fail if below thresholdconcurrencyfail-fast: false.github/workflows/gh pr creategh pr checks <number> --watchgh pr merge <number> --mergecd <project-root> && git worktree remove .claude/worktrees/chore-setup-cigit checkout main && git pull && git branch -d chore/setup-ci${{ secrets.XXX }}