| name | setup-ci |
| description | Generate a GitHub Actions workflow for SDLC validation. Use when setting up CI/CD for a new project. |
| disable-model-invocation | false |
| argument-hint | [python | javascript | go] |
Setup CI/CD
Generate a GitHub Actions workflow that mirrors the SDLC validation pipeline.
Arguments
python — Python project (ruff, mypy, pytest, bandit). Default if .py files detected.
javascript — JS/TS project (eslint, tsc, jest/vitest).
go — Go project (go vet, staticcheck, go test).
If no argument provided, detect language from project files.
Steps
-
Detect language if not specified:
*.py files → python
*.ts or *.js files → javascript
*.go files → go
-
Check for existing workflow:
- If
.github/workflows/sdlc-validate.yml exists, warn and ask before overwriting.
-
Create workflow directory:
mkdir -p .github/workflows
-
Generate workflow from the appropriate template:
-
Report the created file and suggest next steps:
Created .github/workflows/sdlc-validate.yml
Python workflow runs on push and PR to main:
- Lint (ruff)
- Format check (ruff format)
- Type check (mypy)
- Tests (pytest)
- Security (bandit)
JavaScript/TypeScript workflow runs:
- Install (npm ci)
- Lint (npm run lint)
- Type check (tsc --noEmit if tsconfig.json present)
- Tests (npm test)
- Security audit (npm audit --audit-level=high)
Go workflow runs:
- Modules (go mod download)
- Vet (go vet ./...)
- Lint (staticcheck ./...)
- Tests with race detector (go test -race ./...)
- Security scan (gosec ./...)
Commit and push to activate CI.