skills/quality-gate/SKILL.md
Runs lint, format, type check, and security scan; enforces pre-commit hooks. Use before every commit and as the final step before opening a PR. Invokes sub-skills (lint, format, type, security) as needed.
npx skillsauth add pkuppens/pkuppens quality-gateInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Enforces code quality before commits and PRs. Runs the minimum required checks for the repo's toolchain.
git commitRun these in order (fail fast):
# 1. Lint — catch style and logic issues
uv run ruff check .
# 2. Format — enforce consistent style
uv run ruff format --check .
# 3. Type check (if configured)
uv run ty # Astral type checker; or: uv run pyright
# 4. Tests
uv run pytest
# 5. Pre-commit (runs all hooks)
pre-commit run --all-files
When these sub-skills are created, invoke them for per-check focus. Until then, run the commands in Standard checks above.
| Sub-skill | Tool | When | |-----------|------|------| | quality-gate-lint | ruff check | Every commit | | quality-gate-format | ruff format | Every commit | | quality-gate-type | ty / pyright | Before PR | | quality-gate-security | ruff check (S rules) / bandit / npm audit | Before PR / CI |
--no-verify.When the repo is an OpenClaw project (openclaw config, gateway, or agent code), run openclaw-security as a mandatory check:
openclaw security audit --deep
openclaw security audit --fix
Both must pass before integration-commit. Report in Quality Gate Results.
Check the repo's pyproject.toml for:
[tool.ruff] — line length, selected rules[tool.ty] or [tool.pyright] — type checking configuration.pre-commit-config.yaml — active hooksReport pass/fail per check:
## Quality Gate Results
- [x] ruff check — clean
- [x] ruff format --check — clean
- [ ] ty — 2 errors (see below)
- [x] pytest — 42 passed, 0 failed
List errors with file and line reference for any failures.
testing
Syncs remote default branch locally (checkout, fetch --prune, pull) and returns to the previous branch when it still exists. Reports stashes and worktrees not yet handled. Use when the user asks to sync main, update default branch, fetch/pull origin, or run /sync-branch.
tools
Creates, queries, updates, and links Azure Boards work items via az boards CLI. Use when filing ADO work items, running WIQL queries, or setting area path, iteration, tags, and assignee.
tools
Creates, reviews, and completes Azure Repos pull requests and branch policies via az repos CLI. Use when opening ADO PRs, setting required reviewers, or configuring build validation policies.
development
Guides Azure Pipelines YAML structure, build validation on PRs, and staged deployment with environments and approvals. Use when authoring azure-pipelines.yml or configuring CI/CD on Azure DevOps.