run-quality-gate

Execute quality gate validation with configurable blocking behavior. Use when running type-check, build, tests, lint, or custom validation commands in orchestrators or workers to enforce quality standards.

allowed_tools: Bash, Read

$ 설치

git clone https://github.com/maslennikov-ig/claude-code-orchestrator-kit /tmp/claude-code-orchestrator-kit && cp -r /tmp/claude-code-orchestrator-kit/.claude/skills/run-quality-gate ~/.claude/skills/claude-code-orchestrator-kit

// tip: Run this command in your terminal to install the skill


name: run-quality-gate description: Execute quality gate validation with configurable blocking behavior. Use when running type-check, build, tests, lint, or custom validation commands in orchestrators or workers to enforce quality standards. allowed-tools: Bash, Read

Run Quality Gate

Execute validation commands as quality gates with structured error reporting.

When to Use

  • Type-check, build, test, lint validation
  • Orchestrator phase validation
  • Worker self-validation

Input

{
  "gate": "type-check|build|tests|lint|custom",
  "blocking": true,
  "custom_command": "pnpm custom-validate"
}

Gate Commands

GateCommand
type-checkpnpm type-check
buildpnpm build
testspnpm test
lintpnpm lint
customcustom_command value

Process

  1. Map gate to command - Validate custom_command if gate="custom"
  2. Execute via Bash - Timeout: 5 minutes, capture stdout/stderr
  3. Parse result - Exit code 0 = passed, non-zero = failed
  4. Extract errors - Lines with "error", "failed", TS#### codes
  5. Determine action:
    • Passed → action="continue"
    • Failed + blocking → action="stop"
    • Failed + non-blocking → action="warn"

Output

{
  "gate": "type-check",
  "passed": true,
  "blocking": true,
  "action": "continue",
  "errors": [],
  "exit_code": 0,
  "duration_ms": 2345,
  "command": "pnpm type-check",
  "timestamp": "2025-10-18T14:30:00Z"
}

Examples

Blocking gate passes:

{ "gate": "type-check", "blocking": true }{ "passed": true, "action": "continue", "errors": [] }

Blocking gate fails (stops workflow):

{ "gate": "build", "blocking": true }{ "passed": false, "action": "stop", "errors": ["Module not found: missing-module"] }

Non-blocking gate fails (warns only):

{ "gate": "lint", "blocking": false }{ "passed": false, "action": "warn", "errors": ["Missing semicolon"] }

Error Handling

  • Timeout (5 min): Return failed with timeout error
  • Missing custom_command: Return error
  • Command not found: Return failed with exit_code=127

Notes

  • Exit code 0 always = success regardless of output
  • Blocking flag only affects action, not passed status
  • Error extraction is best-effort