К основному содержанию
скилл CX Codex

code-reviewer · zhaono1 — скилл для Claude Code: что делает и как установить

Скилл проверяет пулреквесты и диффы через Git, оценивая безопасность, логику, тесты и оформление кода.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add zhaono1/agent-playbook --skill code-reviewer -a claude-code
Открыть на GitHub

Что делает code-reviewer

Скилл автоматизирует разбор изменений в репозитории перед слиянием веток. Сначала агент запрашивает список изменённых файлов и сам дифф командой git diff main...HEAD. Затем он анализирует правки по категориям: корректность логики, утечки секретов, уязвимости вроде SQLi или XSS, проблемы с производительностью, покрытие тестами и соблюдение правил TypeScript, React, Python или Go.

Результат формируется в виде структурированного отчёта с группировкой замечаний по уровню важности: Critical, High, Medium и Low. К каждой проблеме агент привязывает конкретный файл и строку, а в конце выдаёт вердикт со статусом проверки.

Для запуска чеклиста авторы приложили скрипт scripts/review_checklist.py, для которого потребуется установленный Python 3. Агенту также нужен доступ к системным инструментам Bash, Read и Grep, иначе он не сможет прочитать историю коммитов.

Какие задачи решает

  • найти утечки секретов и уязвимости в свежем коде
  • проверить обработку краевых случаев и ошибок в пулреквесте
  • выявить неэффективные запросы к базам данных и лишние ререндеры
  • структурировать замечания к коду по степени критичности

Примеры запросов агенту

  • Сделай ревью изменений в текущей ветке относительно main
  • Проверь этот пулреквест на баги и безопасность
  • Посмотри свежий дифф и оформи отчёт с замечаниями

Как установить code-reviewer

1Через Skills CLI (Vercel)

npx skills add zhaono1/agent-playbook --skill code-reviewer -a claude-code

2Вручную: положить файлы

~/.claude/skills/code-reviewer/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/code-reviewer/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о code-reviewer

Как установить code-reviewer в Claude Code?

Выполните команду npx skills add zhaono1/agent-playbook --skill code-reviewer -a claude-code в терминале или сохраните описание в файл ~/.claude/skills/code-reviewer/SKILL.md.

Какие категории проверяет скилл при анализе кода?

Анализ охватывает корректность бизнес-логики, уязвимости, проблемы с производительностью вроде N+1 запросов, чистоту архитектуры, покрытие тестами и актуальность документации.

Что требуется скиллу для работы в проекте?

Агенту нужны права на запуск команд через Bash, чтение файлов и Git с веткой main для снятия диффа. Для генерации отдельного чеклиста через скрипт понадобится Python 3.

Исходный текст

SKILL.md · MIT
---
name: code-reviewer
description: Reviews pull requests and code changes for quality, security, and best practices. Use when user asks for code review, PR review, or mentions reviewing changes.
allowed-tools: Read, Grep, Glob, Bash, WebFetch, WebSearch
metadata:
  hooks:
    after_complete:
      - trigger: self-improving-agent
        mode: background
        reason: "Learn from review patterns"
      - trigger: session-logger
        mode: auto
        reason: "Log review activity"
---

# Code Reviewer

A comprehensive code review skill that analyzes pull requests and code changes for quality, security, maintainability, and best practices.

## When This Skill Activates

This skill activates when you:
- Ask for a code review
- Request a PR review
- Mention reviewing changes
- Say "review this" or "check this code"

## Review Process

### Phase 1: Context Gathering

1. **Get changed files**
   ```bash
   git diff main...HEAD --name-only
   git log main...HEAD --oneline
   ```

2. **Get the diff**
   ```bash
   git diff main...HEAD
   ```

3. **Understand project context**
   - Read relevant documentation
   - Check existing patterns in similar files
   - Identify project-specific conventions

### Phase 2: Analysis Categories

#### 1. Correctness
- [ ] Logic is sound and matches requirements
- [ ] Edge cases are handled
- [ ] Error handling is appropriate
- [ ] No obvious bugs or typos

#### 2. Security
- [ ] No hardcoded secrets or credentials
- [ ] Input validation and sanitization
- [ ] SQL injection prevention
- [ ] XSS prevention (for frontend)
- [ ] Authentication/authorization checks
- [ ] Safe handling of user data

#### 3. Performance
- [ ] No N+1 queries
- [ ] Appropriate caching
- [ ] Efficient algorithms
- [ ] No unnecessary computations
- [ ] Memory efficiency

#### 4. Code Quality
- [ ] Follows DRY principle
- [ ] Follows KISS principle
- [ ] Appropriate abstractions
- [ ] Clear naming conventions
- [ ] Proper typing (if TypeScript)
- [ ] No commented-out code

#### 5. Testing
- [ ] Tests cover new functionality
- [ ] Tests cover edge cases
- [ ] Test assertions are meaningful
- [ ] No brittle tests

#### 6. Documentation
- [ ] Complex logic is explained
- [ ] Public APIs have documentation
- [ ] JSDoc/TSDoc for functions
- [ ] README updated if needed

#### 7. Maintainability
- [ ] Code is readable
- [ ] Consistent style
- [ ] Modular design
- [ ] Separation of concerns

### Phase 3: Output Format

Use this structured format for review feedback:

```markdown
# Code Review

## Summary
Brief overview of the changes (2-3 sentences).

## Issues by Severity

### Critical
Must fix before merge.

- [ ] **Issue Title**: Description with file:line reference

### High
Should fix before merge unless there's a good reason.

- [ ] **Issue Title**: Description with file:line reference

### Medium
Consider fixing, can be done in follow-up.

- [ ] **Issue Title**: Description with file:line reference

### Low
Nice to have improvements.

- [ ] **Issue Title**: Description with file:line reference

## Positive Highlights
What was done well in this PR.

## Suggestions
Optional improvements that don't require immediate action.

## Approval Status
- [ ] Approved
- [ ] Approved with suggestions
- [ ] Request changes
```

## Common Issues to Check

### Security Issues

| Issue | Pattern | Recommendation |
|-------|----------|----------------|
| Hardcoded secrets | `const API_KEY = "sk-"` | Use environment variables |
| SQL injection | `\"SELECT * FROM...\" + user_input` | Use parameterized queries |
| XSS vulnerability | `innerHTML = user_input` | Sanitize or use textContent |
| Missing auth check | New endpoint without `@RequireAuth` | Add authentication middleware |

### Performance Issues

| Issue | Pattern | Recommendation |
|-------|----------|----------------|
| N+1 query | Loop with database call | Use eager loading or batch queries |
| Unnecessary re-render | Missing dependencies in `useEffect` | Fix dependency array |
| Memory leak | Event listener not removed | Add cleanup in useEffect return |
| Inefficient loop | Nested loops O(n²) | Consider hash map or different algorithm |

### Code Quality Issues

| Issue | Pattern | Recommendation |
|-------|----------|----------------|
| Duplicate code | Similar blocks repeated | Extract to function |
| Magic number | `if (status === 5)` | Use named constant |
| Long function | Function >50 lines | Split into smaller functions |
| Complex condition | `a && b || c && d` | Extract to variable with descriptive name |

### Testing Issues

| Issue | Pattern | Recommendation |
|-------|----------|----------------|
| No tests | New feature without test file | Add unit tests |
| Untested edge case | Test only covers happy path | Add edge case tests |
| Brittle test | Test relies on implementation details | Test behavior, not implementation |
| Missing assertion | Test doesn't assert anything | Add proper assertions |

## Language-Specific Guidelines

### TypeScript
- Use `unknown` instead of `any` for untyped values
- Prefer `interface` for public APIs, `type` for unions
- Use strict mode settings
- Avoid `as` assertions when possible

### React
- Follow Hooks rules
- Use `useCallback`/`useMemo` appropriately (not prematurely)
- Prefer function components
- Use proper key props in lists
- Avoid prop drilling with Context

### Python
- Follow PEP 8 style guide
- Use type hints
- Use f-strings for formatting
- Prefer list comprehensions over map/filter
- Use context managers for resources

### Go
- Handle errors explicitly
- Use named returns for clarity
- Keep goroutines simple
- Use channels for communication
- Avoid package-level state

## Before Approving

Confirm the following:
- [ ] All critical issues are addressed
- [ ] Tests pass locally
- [ ] No merge conflicts
- [ ] Commit messages are clear
- [ ] Documentation is updated
- [ ] Breaking changes are documented

## Scripts

Run the review checklist script:
```bash
python3 scripts/review_checklist.py --base main --output review-checklist.md
```

## References

- `references/checklist.md` - Complete review checklist
- `references/security.md` - Security review guidelines
- `references/patterns.md` - Common patterns and anti-patterns

© zhaono1 · MIT · zhaono1/agent-playbook

Похожие скиллы

Все скиллы по теме «Код-ревью и рефакторинг» →

Сначала — code-reviewer от других авторов.

code-reviewer https://github.com/Jeffallan Анализирует дифы и файлы, ловит баги, уязвимости (SQL-injection, XSS), запахи кода и N+1 запросы, выдаёт структурированный отчёт с приоритетами. Нужен при ревью PR и аудитах качества. CX Codex +1 6 500установок code-reviewer sickn33 Задаёт агенту роль ревьюера кода с проверками безопасности по OWASP, поиском утечек памяти и анализом архитектуры. Пригодится перед отправкой пулл-реквеста в продакшен. CX Codex +1 1 000установок code-reviewer Alireza Rezvani Разбирает пулл-реквест: считает сложность диффа, ищет проблемные места в коде и сводит всё в отчёт с вердиктом. Нужен, когда правок много и непонятно, с чего начинать. 1 130установок improve-codebase-architecture Matt Pocock Скилл ищет архитектурные узкие места в кодовой базе и показывает варианты углубления модулей в HTML-отчёте. Подойдёт для ревью перед рефакторингом. 1 163 035установок tdd Matt Pocock Скилл управляет циклом красный-зелёный в TDD: проверяет, что тесты пишутся до кода, держит их на уровне публичных интерфейсов и не завязывает на внутреннюю структуру. 1 141 062установок triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. 990 453установок codebase-design Matt Pocock Скилл помогает проектировать модули с небольшим интерфейсом и скрытой внутри сложностью. Подходит для рефакторинга, тестируемости и поиска чистого seam. 850 344установок code-review Matt Pocock Проверяет изменения от выбранной точки по стандартам репозитория и требованиям задачи. Нужен для ревью ветки, PR или незавершённой работы. 789 521установок implement Matt Pocock Выполняет задачу по спецификации или тикетам, ведёт работу через тесты и завершает её ревью с коммитом. Подходит для задач, где нужен дисциплинированный цикл разработки. 774 700установок

Из того же набора21

workflow-orchestrator Скилл ловит момент, когда другой скилл закончил работу, и решает, что запускать дальше: логирование сессии, разбор ошибок или захват кандидата на самоулучшение. CX Codex +1 833установок prd-planner Ведёт создание PRD и технического дизайна через четыре файла в docs/, чтобы агент не терял контекст между шагами. CX Codex +1 829установок test-automator Помогает писать юнит-, интеграционные и E2E-тесты, поднимать фреймворк и считать покрытие. Пригодится, когда тестов в проекте мало или они разъехались. CX Codex +1 812установок qa-expert Скилл для планирования тестового покрытия и настройки quality gates. Пригодится, когда нужно разложить проверки по уровням риска и стадиям CI. CX Codex +1 753установок refactoring-specialist Скилл ведёт агента по шагам рефакторинга: находит запахи кода, предлагает технику и следит, чтобы тесты остались зелёными. CX Codex +1 747установок debugger Скилл ведёт агента по методике отладки: воспроизвести баг, сузить область, найти причину, починить и закрыть регрессионным тестом. CX Codex +1 745установок session-logger Сохраняет короткую сводку разговора с агентом: что решили, какие файлы трогали, что осталось открытым. Пригодится, когда нужно вернуться к работе позже. CX Codex +1 743установок api-documenter Скилл для описания REST и GraphQL API в формате OpenAPI/Swagger. Пригодится, когда нужно превратить россыпь эндпоинтов в читаемую спецификацию. CX Codex +1 717установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой