Claude Code Review: Automated Code Review with AI
Code review is one of the highest-leverage uses of Claude Code. Instead of spending hours reviewing pull requests manually, you can use Claude Code to automatically catch bugs, security vulnerabilities, performance issues, and style violations -- then focus your human review time on architecture and design decisions.
This guide covers how to use Claude Code for code review in your terminal, integrate it into CI/CD with GitHub Actions, and install specialized review skills that give Claude domain-specific expertise.
Quick Start: Review a PR in 30 Seconds
The fastest way to start using Claude Code for code review:
# Review the current branch against main
claude "review the diff between main and HEAD for bugs, security issues,
and code quality problems. Be specific about line numbers."
# Review a specific PR by number
gh pr diff 123 | claude -p "review this diff for issues"
# Review with structured output
claude -p "review the changes in this PR" --output-format json
Pro tip: Install a code review skill for better results: claude /install anthropics/code-reviewer. Browse more review skills in the Code Review category.
Review Methods
1. Interactive Review (Terminal)
Start a Claude Code session and review changes conversationally:
# Start Claude Code in your project
claude
# Ask for a review
> Review all changes since the last commit. Focus on:
> 1. Logic errors and edge cases
> 2. Security vulnerabilities (SQL injection, XSS, auth bypasses)
> 3. Performance issues (N+1 queries, unnecessary re-renders)
> 4. Missing error handling
Claude will read the diff, analyze each change, and provide detailed feedback with file names and line numbers. You can then ask follow-up questions or have Claude fix the issues it finds.
2. Headless Review (CI/CD)
Use Claude Code's headless mode (-p flag) for automated reviews in CI/CD pipelines:
# In your GitHub Actions workflow
- name: AI Code Review
run: |
gh pr diff ${{ github.event.pull_request.number }} | \
claude -p "Review this PR diff. Report any bugs, security issues,
or quality problems. Output as markdown with severity levels." \
> review.md
# Post as PR comment
gh pr comment ${{ github.event.pull_request.number }} \
--body "$(cat review.md)"
See our GitHub Actions guide for full CI/CD integration setup.
3. Skill-Enhanced Review
Install specialized skills that give Claude deep expertise in specific review areas:
# Security-focused review
claude /install security-auditor
# Frontend-specific review
claude /install frontend-code-reviewer
# Performance review
claude /install performance-analyzer
Browse the full collection of code review skills in the code review category or search the skills directory.
What Claude Code Catches
A well-configured Claude Code review consistently catches issues that human reviewers miss:
Bugs & Logic Errors
- Off-by-one errors in loops and array access
- Null/undefined dereferences and missing null checks
- Race conditions in async code
- Incorrect boolean logic and edge cases
- Type mismatches and implicit conversions
Security Vulnerabilities
- SQL injection via string concatenation
- XSS through unescaped user input
- Authentication and authorization bypasses
- Hardcoded secrets and credentials
- Insecure cryptographic practices
- Path traversal and file inclusion
Performance Issues
- N+1 database queries
- Missing indexes on queried columns
- Unnecessary re-renders in React components
- Memory leaks from unclosed resources
- Inefficient algorithms (O(n^2) when O(n) is possible)
Code Quality
- Dead code and unused variables
- Overly complex functions that should be split
- Missing error handling at system boundaries
- Inconsistent naming conventions
- Missing or incorrect types (TypeScript)
Setting Up CLAUDE.md for Reviews
Create project-specific review instructions in your CLAUDE.md:
# CLAUDE.md — Code Review Configuration
## Review Standards
- All API endpoints must validate input with Zod schemas
- Database queries must use parameterized queries (no string concat)
- React components must not have inline styles
- Functions over 50 lines should be flagged for splitting
- All public functions need JSDoc comments
## Security Requirements
- No secrets in code (use environment variables)
- All user input must be sanitized before rendering
- Authentication required on all /api/ routes except /api/health
- Rate limiting required on authentication endpoints
## Testing Requirements
- New functions need corresponding unit tests
- API endpoints need integration tests
- Test coverage must not decrease
GitHub Actions Integration
The most powerful use of Claude Code review is automated PR reviews. Here's a complete GitHub Actions workflow:
# .github/workflows/ai-review.yml
name: AI Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
permissions:
pull-requests: write
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Claude Code
run: npm install -g @anthropic-ai/claude-code
- name: Run AI Review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
git diff origin/main...HEAD | claude -p \
"Review this code diff thoroughly. Report:
1. Bugs and logic errors (Critical)
2. Security vulnerabilities (Critical)
3. Performance issues (Warning)
4. Code quality concerns (Info)
Format as markdown with severity badges." \
> review-output.md
- name: Post Review Comment
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review-output.md', 'utf8');
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: `## AI Code Review\n\n${review}\n\n---\n*Powered by [Claude Code](https://skillsplayground.com/guides/claude-code-review/)*`
});
Advanced Review Patterns
Multi-Pass Review
Run multiple focused reviews for thorough coverage:
# Pass 1: Security audit
claude -p "Audit this diff for OWASP Top 10 vulnerabilities only" < diff.patch
# Pass 2: Logic review
claude -p "Check for logic errors, edge cases, and race conditions" < diff.patch
# Pass 3: Architecture review
claude -p "Does this change follow our architecture patterns? Check CLAUDE.md" < diff.patch
Review with Context
Give Claude context about the change before reviewing:
claude "This PR adds user authentication with OAuth2.
The requirements are:
- Support Google and GitHub OAuth providers
- Store sessions in Redis
- Refresh tokens automatically
Now review the diff between main and this branch against
these requirements. Flag anything missing or incorrect."
Comparative Review
Compare two approaches side by side:
claude "Compare the implementation in src/auth/jwt.ts with the
approach described in our architecture docs. Which patterns
does it follow? Which does it violate?"
Review Skills from the Directory
The Skills Playground has dozens of code review skills you can install:
| Skill | Focus Area | Install |
|---|---|---|
| Code Reviewer | General code review | claude /install anthropics/code-reviewer |
| Security Auditor | OWASP, auth, crypto | claude /install security-auditor |
| Frontend Review | React, accessibility, CSS | claude /install frontend-reviewer |
| API Reviewer | REST/GraphQL best practices | claude /install api-reviewer |
Browse all code review skills →
Get started: Run claude "review the diff against main" in any project to try AI code review right now. For specialized reviews, install a code review skill.