PluginBench
Skill
Pass
Audit score 90

code-review-quality

proffesor-for-testing/agentic-qe

Conduct context-driven code reviews focusing on quality, testability, and maintainability.

What is code-review-quality?

A structured approach to code review that prioritizes bugs, security, and maintainability over style preferences. Use when reviewing pull requests, providing feedback during pair programming, or establishing team review standards.

  • Prioritize feedback by severity: Blocker (🔴) → Major (🟡) → Minor (🟢) → Suggestion (💡)
  • Evaluate code across logic correctness, security risks, testability, maintainability, and performance
  • Provide context-driven feedback with explanations rather than commands
  • Enforce minimum review scope limits (< 400 lines per review session)
  • Coordinate with specialized agents for security, performance, coverage, and quality analysis

How to install code-review-quality

npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill code-review-quality
Claude Code
Cursor
Windsurf
Cline

How to use code-review-quality

  1. 1.Determine review scope and split PRs larger than 400 lines into chunks
  2. 2.Apply the quick review checklist: logic, security, testability, maintainability, performance
  3. 3.Assign feedback priority levels using the provided templates (Blocker, Major, Minor, Suggestion)
  4. 4.Ask clarifying questions rather than issuing commands; explain why feedback matters
  5. 5.Use agent-assisted reviews for security, performance, and coverage checks; focus human review on logic and design

Use cases

Good for
  • Review pull requests with consistent priority levels and feedback templates
  • Establish team code review standards and etiquette guidelines
  • Conduct security-focused reviews using the qe-security-scanner agent
  • Verify test coverage on changed files using the qe-coverage-analyzer agent
  • Mentor developers through constructive, question-based feedback
Who it's for
  • Code reviewers and team leads
  • Quality assurance engineers
  • Developers establishing review practices
  • Teams using agent-assisted code review workflows

code-review-quality FAQ

What should I focus on in a code review?

Prioritize logic correctness, security risks, test coverage, and maintainability. Skip formatting and style preferences—use linters for those. Review < 400 lines at a time for effectiveness.

How should I structure feedback?

Use the priority levels: 🔴 Blocker (must fix), 🟡 Major (should fix), 🟢 Minor (nice to fix), 💡 Suggestion (consider). Always explain why the feedback matters and provide a concrete alternative.

When should I use agent-assisted reviews?

Use agents for security scanning, performance testing, and coverage analysis. They provide consistent, fast initial review. Human reviewers should focus on logic, design, and maintainability.

How long should a code review take?

Aim for fast feedback (< 24 hours) over perfect feedback. If a PR exceeds 400 lines, request the author split it into smaller, reviewable chunks.

What if I disagree with the author's approach?

Ask questions like 'Have you considered...?' rather than demanding changes. Explain the trade-offs and context. Architecture debates belong in design discussions, not code reviews.

Full instructions (SKILL.md)

Source of truth, from proffesor-for-testing/agentic-qe.


name: code-review-quality description: "Conduct context-driven code reviews focusing on quality, testability, and maintainability. Use when reviewing code, providing feedback, or establishing review practices." category: development-practices priority: high tokenEstimate: 900 agents: [qe-quality-analyzer, qe-security-scanner, qe-performance-tester, qe-coverage-analyzer] implementation_status: optimized optimization_version: 1.0 last_optimized: 2025-12-02 dependencies: [] quick_reference_card: true tags: [code-review, feedback, quality, testability, maintainability, pr-review] trust_tier: 2 validation: schema_path: schemas/output.json validator_path: scripts/validate-config.json

Code Review Quality

<default_to_action> When reviewing code or establishing review practices:

  1. PRIORITIZE feedback: 🔴 Blocker (must fix) → 🟡 Major → 🟢 Minor → 💡 Suggestion
  2. FOCUS on: Bugs, security, testability, maintainability (not style preferences)
  3. ASK questions over commands: "Have you considered...?" > "Change this to..."
  4. PROVIDE context: Why this matters, not just what to change
  5. LIMIT scope: Review < 400 lines at a time for effectiveness

Quick Review Checklist:

  • Logic: Does it work correctly? Edge cases handled?
  • Security: Input validation? Auth checks? Injection risks?
  • Testability: Can this be tested? Is it tested?
  • Maintainability: Clear naming? Single responsibility? DRY?
  • Performance: O(n²) loops? N+1 queries? Memory leaks?

Critical Success Factors:

  • Review the code, not the person
  • Catching bugs > nitpicking style
  • Fast feedback (< 24h) > thorough feedback </default_to_action>

Quick Reference Card

When to Use

  • PR code reviews
  • Pair programming feedback
  • Establishing team review standards
  • Mentoring developers

Feedback Priority Levels

LevelIconMeaningAction
Blocker🔴Bug/security/crashMust fix before merge
Major🟡Logic issue/test gapShould fix before merge
Minor🟢Style/namingNice to fix
Suggestion💡Alternative approachConsider for future

Review Scope Limits

Lines ChangedRecommendation
< 200Single review session
200-400Review in chunks
> 400Request PR split

What to Focus On

✅ Review❌ Skip
Logic correctnessFormatting (use linter)
Security risksNaming preferences
Test coverageArchitecture debates
Performance issuesStyle opinions
Error handlingTrivial changes

Feedback Templates

Blocker (Must Fix)

🔴 **BLOCKER: SQL Injection Risk**

This query is vulnerable to SQL injection:
```javascript
db.query(`SELECT * FROM users WHERE id = ${userId}`)

Fix: Use parameterized queries:

db.query('SELECT * FROM users WHERE id = ?', [userId])

Why: User input directly in SQL allows attackers to execute arbitrary queries.


### Major (Should Fix)
```markdown
🟡 **MAJOR: Missing Error Handling**

What happens if `fetchUser()` throws? The error bubbles up unhandled.

**Suggestion:** Add try/catch with appropriate error response:
```javascript
try {
  const user = await fetchUser(id);
  return user;
} catch (error) {
  logger.error('Failed to fetch user', { id, error });
  throw new NotFoundError('User not found');
}

### Minor (Nice to Fix)
```markdown
🟢 **minor:** Variable name could be clearer

`d` doesn't convey meaning. Consider `daysSinceLastLogin`.

Suggestion (Consider)

💡 **suggestion:** Consider extracting this to a helper

This validation logic appears in 3 places. A `validateEmail()` helper would reduce duplication. Not blocking, but might be worth a follow-up PR.

Review Questions to Ask

Logic

  • What happens when X is null/empty/negative?
  • Is there a race condition here?
  • What if the API call fails?

Security

  • Is user input validated/sanitized?
  • Are auth checks in place?
  • Any secrets or PII exposed?

Testability

  • How would you test this?
  • Are dependencies injectable?
  • Is there a test for the happy path? Edge cases?

Maintainability

  • Will the next developer understand this?
  • Is this doing too many things?
  • Is there duplication we could reduce?

Minimum Findings Enforcement

Reviews must meet a minimum weighted finding score of 3.0 (CRITICAL=3, HIGH=2, MEDIUM=1, LOW=0.5, INFORMATIONAL=0.25). If the initial review falls short, run the qe-devils-advocate agent as a meta-reviewer to find additional observations. Every review should have at least 3 actionable observations.


Agent-Assisted Reviews

// Comprehensive code review
await Task("Code Review", {
  prNumber: 123,
  checks: ['security', 'performance', 'testability', 'maintainability'],
  feedbackLevels: ['blocker', 'major', 'minor'],
  autoApprove: { maxBlockers: 0, maxMajor: 2 }
}, "qe-quality-analyzer");

// Security-focused review
await Task("Security Review", {
  prFiles: changedFiles,
  scanTypes: ['injection', 'auth', 'secrets', 'dependencies']
}, "qe-security-scanner");

// Test coverage review
await Task("Coverage Review", {
  prNumber: 123,
  requireNewTests: true,
  minCoverageDelta: 0
}, "qe-coverage-analyzer");

Agent Coordination Hints

Memory Namespace

aqe/code-review/
├── review-history/*     - Past review decisions
├── patterns/*           - Common issues by team/repo
├── feedback-templates/* - Reusable feedback
└── metrics/*            - Review turnaround time

Fleet Coordination

const reviewFleet = await FleetManager.coordinate({
  strategy: 'code-review',
  agents: [
    'qe-quality-analyzer',    // Logic, maintainability
    'qe-security-scanner',    // Security risks
    'qe-performance-tester',  // Performance issues
    'qe-coverage-analyzer'    // Test coverage
  ],
  topology: 'parallel'
});

Review Etiquette

✅ Do❌ Don't
"Have you considered...?""This is wrong"
Explain why it mattersJust say "fix this"
Acknowledge good codeOnly point out negatives
Suggest, don't demandBe condescending
Review < 400 linesReview 2000 lines at once

Related Skills

  • agentic-quality-engineering - Agent coordination
  • security-testing - Security review depth
  • refactoring-patterns - Maintainability patterns

Remember

Prioritize feedback: 🔴 Blocker → 🟡 Major → 🟢 Minor → 💡 Suggestion. Focus on bugs and security, not style. Ask questions, don't command. Review < 400 lines at a time. Fast feedback (< 24h) beats thorough feedback.

With Agents: Agents automate security, performance, and coverage checks, freeing human reviewers to focus on logic and design. Use agents for consistent, fast initial review.

Skill Composition

  • Security concerns → Compose with /security-testing for security-focused review
  • Coverage check → Run /qe-coverage-analysis on changed files
  • Ship decision → Feed review results into /qe-quality-assessment

Gotchas

  • Agent reviews >400 lines at once and misses issues — chunk reviews to 200-400 lines maximum
  • Nitpicking style while missing logic bugs is the #1 agent review failure — prioritize correctness over formatting
  • Agent approves code that compiles but has subtle race conditions — always check shared state and async patterns
  • Review comments without suggested fixes are unhelpful — always include a proposed alternative
  • Agent doesn't check if the PR actually solves the linked issue — verify the stated problem is actually fixed