QC Gate - Multi-agent Review

VerifiedSafe

Quality assurance system with 5 parallel agents (code review, simplification, consistency, robustness, scope) validating all changes before commit.

Sby Skills Guide Bot
DevelopmentIntermediate
306/2/2026
Claude Code
#quality-gate#code-review#automation#testing

Recommended for

Our review

The QC gate skill runs 5 parallel AI agents to review code changes against a diff, checking code quality, simplicity, consistency, robustness, and scope.

Strengths

  • Catches issues through multiple perspectives simultaneously.
  • Reduces human review burden.
  • Enforces consistency across codebase patterns.
  • Handles edge case detection.

Limitations

  • Requires a baseline branch (main) for the diff.
  • May produce false positives or miss context without pattern files.
  • Large diffs may need manual breakdown.
When to use it

Use this skill before committing changes to ensure a multi-faceted review of code quality and consistency.

When not to use it

Avoid using for trivial changes or in projects without a clear git history and established patterns.

Security analysis

Safe
Quality score90/100

The skill uses only Bash to capture git diff output and Task to spawn agents. It does not perform any destructive or exfiltrating actions. All operations are local and safe.

No concerns found

Examples

Run QC gate on latest changes
Run the quality gate on my current changes compared to main.
Review a specific task
I have a set of changes. Please run the QC gate with task description 'adding user authentication module'.

name: qc description: Quality gate. 5 parallel agents review changes. All must pass. allowed-tools: Task, Bash, Read, Grep, Glob

QC Gate

Setup

DIFF=$(git diff main)
FILES=$(git diff main --name-only)
TASK="{task description or 'general changes'}"

Read 1-2 unmodified files from same directories for pattern context.

Agents

Spawn all 5 in parallel. All output raw JSON only, no markdown.

1: Code Review (sonnet)

DIFF: ${DIFF}

- Descriptive naming?
- Errors caught with useful messages?
- No hardcoded values, commented code, debug statements?
- No TODO without ticket ref?
- No obvious bugs?
- No useless comments?

{"pass": bool, "issues": [...]}

2: Simplification (sonnet)

DIFF: ${DIFF}

- Is this overcomplicated? Can I solve the same problem in a simpler manner?
- Can I reduce indirection?
- Can I reduce surface area?
- Premature abstraction? Premature Optimization? YAGNI violations?
- Dead code?
- Three similar lines > one abstraction

{"pass": bool, "issues": [...]}

3: Consistency (sonnet)

DIFF: ${DIFF}
PATTERNS: ${PATTERN_FILES}

- Matches existing codebase patterns?
- Proper types, no any, no unsafe casts?
- Idiomatic error handling?
- Changes internally consistent?
- Is logic isolated and composable?
- Are there existing tests if neccesary?

{"pass": bool, "issues": [...]}

4: Robustness (sonnet)

TASK: ${TASK}
DIFF: ${DIFF}

- Actually solves the problem?
- Edge cases: empty, null, zero, negative, boundaries, concurrency?
- Regression risk: changed signatures, shared state, removed exports?
- Maintains API contracts?

{"pass": bool, "issues": [...]}

5: Scope (haiku)

TASK: ${TASK}
FILES: ${FILES}
DIFF: ${DIFF}

- Solved the problem or just the symptom?
- Changes unrelated to task?
- Unnecessary refactoring?

{"pass": bool, "issues": [...]}

Results

| Check | Verdict | Issues | |-------|---------|--------| | Code Review | ✓/✗ | ... | | Simplification | ✓/✗ | ... | | Consistency | ✓/✗ | ... | | Robustness | ✓/✗ | ... | | Scope | ✓/✗ | ... |

ALL PASS: Ready to commit.

ANY FAIL: List issues, fix them, run /qc again.

Same issue 3x: Escalate to user.

Notes

  • Invalid JSON? Retry once. Still broken? Mark fail.
  • Large diffs (>500 lines): run simplification file-by-file.
Related skills