Agent SkillsAgent Skills
MinBZK

code-reviewer

@MinBZK/code-reviewer
MinBZK
7
0 forks
Updated 3/31/2026
View on GitHub

Performs critical code reviews using REVIEW.md guidelines. Evaluates code quality, architecture, testing, and domain-specific concerns (legal faithfulness, cross-law references, engine safety). Use after completing significant code changes or before merging.

Installation

$npx agent-skills-cli install @MinBZK/code-reviewer
Claude Code
Cursor
Copilot
Codex
Antigravity

Details

Path.claude/skills/code-reviewer/SKILL.md
Branchmain
Scoped Name@MinBZK/code-reviewer

Usage

After installing, this skill will be available to your AI coding assistant.

Verify installation:

npx agent-skills-cli list

Skill Instructions


name: code-reviewer description: Performs critical code reviews using REVIEW.md guidelines. Evaluates code quality, architecture, testing, and domain-specific concerns (legal faithfulness, cross-law references, engine safety). Use after completing significant code changes or before merging. allowed-tools: Read, Grep, Glob, Bash

Code Reviewer

Performs thorough, skeptical code reviews to catch issues before they reach production.

Mindset: Trust No One

Assume the author made mistakes. Even experienced developers:

  • Forget edge cases
  • Miss security implications
  • Copy-paste errors
  • Make off-by-one errors
  • Forget to handle errors
  • Assume happy paths

Your job is to find these issues before they cause problems.

Step 1: Load Review Guidelines

Read REVIEW.md from the repository root. This contains the project context, domain-specific review dimensions, severity scale, and skip rules. These guidelines are the primary source of truth for what to check.

Step 2: Gather Context

# See what files changed
git diff --name-only HEAD~1

# See the full diff
git diff HEAD~1

# Or for staged changes
git diff --cached
  1. Identify all changed files
  2. Read the commit message or PR description
  3. Understand the intent of the changes

Step 3: Review the Changes

CRITICAL RULE: Only review lines that were actually changed in the diff.

Do NOT comment on:

  • Pre-existing code that was not modified in this PR/commit
  • Surrounding context lines that appear in the diff for readability but were not changed
  • Issues in files that were not touched by this PR/commit
  • Pre-existing patterns, style, or naming choices in unchanged code

You may read the full file to understand context, but every finding you report MUST point to a line that was added or modified in the diff. If a line was not changed, it is out of scope — no matter how wrong it looks.

For each changed line/block:

  1. Understand the surrounding code — read enough context to judge the change
  2. Trace the data flow — where does data come from, where does it go?
  3. Check the boundaries — what happens at edges and limits?
  4. Apply REVIEW.md dimensions — check each applicable dimension from the guidelines

Questions to ask (about changed code only):

  • What could go wrong here?
  • What happens if this input is null/empty/huge/negative?
  • What happens if this external call fails?
  • Is this doing what the author thinks it's doing?

Step 4: Run Tests (if applicable)

just test
just bdd

Step 5: Report

Use the severity scale from REVIEW.md. Provide a structured report:

## Code Review: {description}

### Summary
{One paragraph summary of changes and overall assessment}

### Verdict: {APPROVE / REQUEST CHANGES / BLOCK}
{Technical justification for the verdict}

### Critical Issues
- **{Issue title}** (`file:line`)
  - Problem: {What's wrong}
  - Impact: {Why it matters}
  - Fix: {How to fix it}

### Important Issues
- **{Issue title}** (`file:line`)
  - Problem: {What's wrong}
  - Impact: {Why it matters}
  - Fix: {How to fix it}

### Minor Issues
- `file:line` — {Brief description}

Red Flags

  • unwrap() / panic!() on execution paths
  • # TODO or # FIXME without tickets
  • Commented-out code or debug statements
  • Hardcoded credentials or URLs
  • Empty catch/except blocks
  • Euro amounts as floats instead of eurocent integers
  • Broken regelrecht:// URIs