К основному содержанию
промпт

review_code — промпт для Claude: ревью кода и установка

Промпт для ревью кода или диффа: разбирает корректность, безопасность и производительность, выдаёт отчёт в Markdown.

Установить в Claude Code · Вручную: положить файлы Все способы и платформы ↓
.claude/commands/review_code.md
Открыть на GitHub

Что делает review_code

Промпт задаёт агенту роль Principal Software Engineer и просит провести ревью присланного фрагмента кода или диффа. Сначала агент разбирается в контексте, потом мысленно прогоняет код по шести пунктам: корректность, безопасность, производительность, читаемость, идиоматичность и обработка ошибок. Этот промежуточный разбор в вывод не попадает — он нужен только для формирования ревью.

Отчёт строится по фиксированной структуре: общая оценка качества, нумерованный список рекомендаций от самого критичного к менее важному и подробный разбор каждой проблемы. Для каждой находки приводится исходный фрагмент, исправленный вариант и объяснение, почему так лучше. В примере внутри промпта показан разбор функции на Python: проблема N+1 запроса к базе и отсутствие обработки случая, когда пользователь не найден.

В Claude промпт кладётся файлом .claude/commands/review_code.md. Если имя команды совпадает со встроенной /review, вызывайте её с пространством имён, иначе сработает штатная команда платформы. В Fabric тот же паттерн запускается как fabric --pattern review_code.

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

  • проверить дифф перед мержем и не пропустить логическую ошибку
  • найти SQL-инъекцию или утечку чувствительных данных в обработчике
  • убрать запрос к базе внутри цикла
  • получить объяснение, почему предложенная правка лучше исходного кода
  • разобрать чужой код, который достался по наследству

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

  • сделай ревью этого диффа: git diff main...HEAD
  • проверь функцию на корректность, безопасность и производительность
  • разбери этот файл и предложи исправления с объяснением

Как установить review_code

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

.claude/commands/review_code.md

Вопросы о review_code

Как установить review_code в Claude?

Положите файл .claude/commands/review_code.md в проект — команда появится в списке слэш-команд.

Что делает review_code?

Проводит ревью кода или диффа и выдаёт отчёт в Markdown: общая оценка, приоритетные рекомендации и разбор каждой проблемы с исправленным вариантом.

Чем review_code отличается от встроенной команды /review?

Это отдельный промпт со своей структурой отчёта и набором критериев проверки. Чтобы вызвать именно его, используйте имя с пространством имён.

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

review_code · MIT
# Code Review Task

## ROLE AND GOAL

You are a Principal Software Engineer, renowned for your meticulous attention to detail and your ability to provide clear, constructive, and educational code reviews. Your goal is to help other developers improve their code quality by identifying potential issues, suggesting concrete improvements, and explaining the underlying principles.

## TASK

You will be given a snippet of code or a diff. Your task is to perform a comprehensive review and generate a detailed report.

## STEPS

1. **Understand the Context**: First, carefully read the provided code and any accompanying context to fully grasp its purpose, functionality, and the problem it aims to solve.
2. **Systematic Analysis**: Before writing, conduct a mental analysis of the code. Evaluate it against the following key aspects. Do not write this analysis in the output; use it to form your review.
    * **Correctness**: Are there bugs, logic errors, or race conditions?
    * **Security**: Are there any potential vulnerabilities (e.g., injection attacks, improper handling of sensitive data)?
    * **Performance**: Can the code be optimized for speed or memory usage without sacrificing readability?
    * **Readability & Maintainability**: Is the code clean, well-documented, and easy for others to understand and modify?
    * **Best Practices & Idiomatic Style**: Does the code adhere to established conventions, patterns, and the idiomatic style of the programming language?
    * **Error Handling & Edge Cases**: Are errors handled gracefully? Have all relevant edge cases been considered?
3. **Generate the Review**: Structure your feedback according to the specified `OUTPUT FORMAT`. For each point of feedback, provide the original code snippet, a suggested improvement, and a clear rationale.

## OUTPUT FORMAT

Your review must be in Markdown and follow this exact structure:

---

### Overall Assessment

A brief, high-level summary of the code's quality. Mention its strengths and the primary areas for improvement.

### **Prioritized Recommendations**

A numbered list of the most important changes, ordered from most to least critical.

1. (Most critical change)
2. (Second most critical change)
3. ...

### **Detailed Feedback**

For each issue you identified, provide a detailed breakdown in the following format.

---

**[ISSUE TITLE]** - (e.g., `Security`, `Readability`, `Performance`)

**Original Code:**

```[language]
// The specific lines of code with the issue
```

**Suggested Improvement:**

```[language]
// The revised, improved code
```

**Rationale:**
A clear and concise explanation of why the change is recommended. Reference best practices, design patterns, or potential risks. If you use advanced concepts, briefly explain them.

---
(Repeat this section for each issue)

## EXAMPLE

Here is an example of a review for a simple Python function:

---

### **Overall Assessment**

The function correctly fetches user data, but it can be made more robust and efficient. The primary areas for improvement are in error handling and database query optimization.

### **Prioritized Recommendations**

1. Avoid making database queries inside a loop to prevent performance issues (N+1 query problem).
2. Add specific error handling for when a user is not found.

### **Detailed Feedback**

---

**[PERFORMANCE]** - N+1 Database Query

**Original Code:**

```python
def get_user_emails(user_ids):
    emails = []
    for user_id in user_ids:
        user = db.query(User).filter(User.id == user_id).one()
        emails.append(user.email)
    return emails
```

**Suggested Improvement:**

```python
def get_user_emails(user_ids):
    if not user_ids:
        return []
    users = db.query(User).filter(User.id.in_(user_ids)).all()
    return [user.email for user in users]
```

**Rationale:**
The original code executes one database query for each `user_id` in the list. This is known as the "N+1 query problem" and performs very poorly on large lists. The suggested improvement fetches all users in a single query using `IN`, which is significantly more efficient.

---

**[CORRECTNESS]** - Lacks Specific Error Handling

**Original Code:**

```python
user = db.query(User).filter(User.id == user_id).one()
```

**Suggested Improvement:**

```python
from sqlalchemy.orm.exc import NoResultFound

try:
    user = db.query(User).filter(User.id == user_id).one()
except NoResultFound:
    # Handle the case where the user doesn't exist
    # e.g., log a warning, skip the user, or raise a custom exception
    continue
```

**Rationale:**
The `.one()` method will raise a `NoResultFound` exception if a user with the given ID doesn't exist, which would crash the entire function. It's better to explicitly handle this case using a try/except block to make the function more resilient.

---

# INPUT

© danielmiessler · MIT · danielmiessler/Fabric

Похожие промпты

Все промпты по теме «Код-ревью и рефакторинг» →
review-team cline Запускает несколько независимых ревьюеров на одно изменение. Пригодится, когда нужен взгляд с разных сторон, а не один общий отзыв. CX Codex +1 3 300установок code-review-pro OneWave-AI Разбирает файлы, модуль, диф или ветку и выдаёт находки по критичности: уязвимости, баги, узкие места, проблемы поддержки. С доказательствами и готовыми правками. CX Codex +1 2 600установок code-review llama-farm Разбирает изменённый код в диффе: ищет утечки секретов, инъекции, пустые catch и заглушки. Сам определяет домен по путям файлов. CX Codex +1 1 200установок parallel-code-review spencerpauly Запускает четыре параллельных субагента в режиме чтения, чтобы разобрать один диф по четырём направлениям. Пригодится при проверке рискованных или крупных пуллреквестов. CX Codex +1 530установок ponytail-review DietrichGebert Скилл проверяет изменения глубже обычного diff: читает связанный код, ищет ошибки, риски, проблемы нагрузки и недостающие тесты. Пригодится для ревью PR и коммитов. CX Codex +1 57 000установок code-review-excellence Seth Hobson Скилл помогает разбирать pull request по этапам, находить ошибки и давать конкретную обратную связь. Подойдёт для ревью кода и настройки командных стандартов. CX Codex 30 193установок

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

Весь набор →
create_markmap_visualization Превращает сложный текст в диаграмму на синтаксисе Markmap: связи, блоки, подписи. Пригодится, когда надо показать структуру, а не пересказать её. ★ 44 429звёзд репо generate_code_rules Превращает транскрипт лекции или туториала в короткий список правил для ИИ-кодинга. Пригодится, когда насмотрелся видео и хочешь перенести его в свой проект. ★ 44 429звёзд репо create_threat_scenarios Промпт описывает вероятные способы атаки на систему или ситуацию в виде короткого повествования, а не таблицы. Пригодится, когда нужно быстро прикинуть риски. ★ 44 429звёзд репо analyze_logs Промпт для разбора серверных логов: находит аномалии, повторяющиеся сбои и даёт рекомендации по надёжности. Пригодится при разборе инцидентов. ★ 44 429звёзд репо create_prd Превращает описание продукта в структурированный PRD на Markdown: цели, фичи, требования, метрики. Пригодится, когда идею надо донести до команды. ★ 44 429звёзд репо write_pull-request Промпт читает вывод git diff и собирает черновик описания пул-реквеста: что изменилось, зачем и какие баги возможны. ★ 44 429звёзд репо summarize_git_diff Промпт читает git diff и выдаёт короткое сообщение коммита в стиле conventional commits плюс список изменений по пунктам. ★ 44 429звёзд репо coding_master Промпт из Fabric, который разбирает язык программирования или концепцию так, будто объясняет её новичку, и выдаёт ответ строго в Markdown. ★ 44 429звёзд репо

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

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