About Quality Gates
Quality Gates is a development skill for agents that validates edited files and guides pre-push and pre-deployment checks. It combines automatic, stack-aware validation with CI and deployment checklists.
Key features
- 01Automatic checks after file edits
- 02Stack and file-type detection
- 03Local lint, build, test, and security pipeline
- 04Five-stage deployment checklist
Use cases
- 01Catch errors immediately after editing
- 02Run quality checks before pushing
- 03Verify an application before deployment
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ hedera-dev/ hedera-skills --skill quality-gatesAfter installing, type/quality-gatesin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/deploy-checklist.mdhook-patterns.mdci-pipeline.mdDetails
From the project READMEQuality Gates
Purpose
Automatic quality validation at every stage of development — from individual file edits to full deployments. Quality gates catch errors early when they're cheapest to fix.
PostToolUse Hooks
The most powerful quality gate: automatic validation every time a file is edited or created.
How It Works
- Agent uses
EditorWriteto modify a file - PostToolUse hook fires automatically
- Validation script detects the file type and runs the appropriate checker
- Output is shown to the agent immediately
- Agent sees errors and can fix them in the same session
Setting Up
The plugin includes a ready-to-use hook in hooks/hooks.json that runs scripts/post-edit-check.sh. When installed as a plugin, this works automatically.
For manual setup in a project, add to .claude/settings.json:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "bash .claude/scripts/post-edit-check.sh"
}
]
}
]
}
}
Important: The command must be exactly bash .claude/scripts/post-edit-check.sh — do not add arguments. The script reads $CLAUDE_TOOL_INPUT from the environment automatically.
See references/hook-patterns.md for stack-specific hook examples.
Deploy Checklist
Before deploying any application, run through these 5 verification stages:
| Stage | What | Gate |
|---|---|---|
| 1. Code Quality | Lint + Typecheck + Tests | All pass |
| 2. Build | Full build succeeds | Artifacts exist |
| 3. Environment | Required env vars present | All set (never read values) |
| 4. Container | Image builds and starts | No errors |
| 5. Post-Deploy | Health endpoint, logs | 200 OK, clean logs |
See references/deploy-checklist.md for complete verification commands per stack.
CI Pre-Push Gate
Run the full quality suite locally before pushing to remote:
Lint → Build → Test → Security Scan
Key rules:
- Run stages sequentially
- Exit on first failure
- Target under 2 minutes total
- Don't skip stages
- Save results to
.claude/reports/ci/
See references/ci-pipeline.md for the full pipeline template.
Stack Detection
The quality gates system auto-detects your project stack to run the right validators.
Detection Priority
| Check | Detected Stack | Primary Validator |
|---|---|---|
tsconfig.json exists | TypeScript | npx tsc --noEmit |
package.json exists (no tsconfig) | JavaScript | npx eslint |
pyproject.toml or setup.py exists | Python | ruff check |
Cargo.toml exists | Rust | cargo check |
go.mod exists | Go | go vet ./... |
File Extension Fallback
When editing individual files, detect by extension:
| Extension | Validator |
|---|---|
.ts, .tsx | TypeScript checker |
.js, .jsx | ESLint (if configured) |
.py | ruff or py_compile |
.rs | cargo check |
.go | go vet |
| Other | Silent pass |
Workflow Integration
During Development
- PostToolUse hooks catch errors on every edit
- Agent fixes issues immediately before they compound
Before Pushing
- Run the CI pipeline locally: lint → build → test → security
- All stages must pass before pushing
Before Deploying
- Run through the deploy checklist
- Verify build, environment, and health endpoints
- Ensure rollback plan is ready
Cross-References
references/hook-patterns.md— PostToolUse hook examples for every stackreferences/deploy-checklist.md— 5-stage pre-deploy verificationreferences/ci-pipeline.md— Local CI pipeline pattern