Промпт для AI-ревью кода: находим баги и уязвимости за 30 секунд
Готовый промпт для глубокого code review с помощью Claude, GPT или Gemini. Находит логические ошибки, уязвимости безопасности и проблемы производительности — с приоритетами и конкретными фиксами.
Задача: что решает этот промпт
К 2026 году 92% американских разработчиков используют AI-инструменты ежедневно. Вайб-кодинг стал нормой — но за ним пришла новая проблема: AI-генерированный код в 2,74× раза чаще содержит уязвимости безопасности по сравнению с кодом, написанным человеком (анализ 470 GitHub PR, декабрь 2025).
Парадокс: мы используем AI, чтобы писать код быстрее, но забываем использовать его же, чтобы этот код проверять.
Этот промпт превращает любую LLM в старшего код-ревьюера, который за секунды находит баги, уязвимости и проблемы производительности — с приоритетами и готовыми фиксами.
Лучший момент для ревью — до пуша в репозиторий, а не после того, как баг ушёл в прод.
Для кого
- Разработчики, активно использующие вайб-кодинг (Cursor, Claude Code, Copilot)
- Джуны и мидлы, которым не хватает опытного ревьюера рядом
- Соло-основатели, пишущие MVP без команды
- QA-инженеры, ищущие баги до тест-сессии
Промпт
Ты — опытный senior-разработчик с 10+ годами практики в [ЯЗЫК/СТЕК].
Проведи детальный code review следующего кода.
<code>
[ВСТАВЬ КОД СЮДА]
</code>
Контекст:
- Проект: [например, REST API на FastAPI, фронтенд на React, CLI-скрипт]
- Окружение: [например, production, публичный сервис, внутренний инструмент]
- Особые требования: [например, обрабатывает финансовые данные, работает с user input]
Проверь по следующим категориям и для КАЖДОЙ найденной проблемы укажи:
- Строку (или диапазон строк)
- Приоритет: 🔴 Critical / 🟠 High / 🟡 Medium / 🟢 Low
- Описание: что именно не так и почему это проблема
- Исправление: конкретный код или чёткий шаг
### Категории проверки:
**1. Безопасность**
- Инъекции (SQL, command, SSTI, XSS, SSRF)
- Небезопасная десериализация
- Открытые секреты / API-ключи в коде
- Сломанная аутентификация или авторизация
- Раскрытие чувствительных данных в логах или ответах
**2. Логические баги**
- Off-by-one ошибки
- Неправильная обработка граничных случаев (null, пустые массивы, нулевое деление)
- Race conditions
- Неверная бизнес-логика
**3. Производительность**
- N+1 запросы к БД
- Лишние вычисления в циклах
- Утечки памяти
- Синхронные блокирующие вызовы там, где нужен async
**4. Качество кода**
- Нарушения принципов SOLID / DRY
- Жёстко заданные значения, которые должны быть конфигом
- Неинформативные имена переменных
- Отсутствующая или неправильная обработка ошибок
В конце дай **итоговую оценку**:
- Общий риск: 🔴 Высокий / 🟡 Средний / 🟢 Низкий
- Топ-3 проблемы, которые нужно исправить в первую очередь
- Что сделано хорошо (если есть)
Пример результата
Входной код (Python/FastAPI):
@app.get("/users/{user_id}")
def get_user(user_id: str):
query = f"SELECT * FROM users WHERE id = '{user_id}'"
result = db.execute(query)
return result
Ответ AI:
🔴 Critical — Строка 3: SQL-инъекция
Переменная user_id подставляется напрямую в строку запроса. Атакующий может передать ' OR '1'='1 и получить доступ ко всей таблице users.
Исправление:
result = db.execute("SELECT * FROM users WHERE id = :user_id", {"user_id": user_id})
🟠 High — Строка 4: Раскрытие чувствительных данных
SELECT * возвращает все поля, включая хэши паролей, токены и другие чувствительные данные. Никогда не возвращай * клиенту.
Исправление:
result = db.execute("SELECT id, username, email, created_at FROM users WHERE id = :user_id", ...)
🟡 Medium — Строка 2: Нет валидации типа user_id
user_id принят как str, но если это UUID или int — лучше объявить тип явно, чтобы FastAPI валидировал автоматически.
Итоговая оценка: 🔴 Высокий риск. Топ-1: SQL-инъекция — немедленно патчить.
Как работает промпт: схема
graph TD
A[Вставляешь код] --> B[Указываешь контекст]
B --> C{AI-ревьюер}
C --> D[🔴 Безопасность]
C --> E[🟠 Логические баги]
C --> F[🟡 Производительность]
C --> G[🟢 Качество кода]
D --> H[Приоритет + строка + фикс]
E --> H
F --> H
G --> H
H --> I[Итоговая оценка риска]
Вариации и настройки
| Вариант | Что меняешь | Для чего |
|---|---|---|
| Только безопасность | Убери категории 3 и 4 | PR перед деплоем в прод |
| Только баги | Оставь только категорию 2 | Быстрое санити-чек |
| Стиль конкретной команды | Добавь «Следуй Google Style Guide для Python» | Соблюдение code style |
| Ревью диффа | Вставь git diff вместо файла | Ревью конкретных изменений |
| Для джунов | Добавь «Объясняй каждую проблему простыми словами» | Обучение |
| Краткий режим | Добавь «Выдай только Critical и High, без Low» | Экономия токенов |
Советы по улучшению результата
1. Давай контекст, а не просто код
Плохо: вставить 500 строк без объяснений. Хорошо: «Это эндпоинт публичного API, который обрабатывает платёжные данные пользователей».
2. Используй RACE-фреймворк
Промпт построен по принципу RACE: Role (senior-разработчик) → Action (провести ревью) → Context (стек, окружение) → Expectation (формат с приоритетами и фиксами). Это даёт структурированный, а не расплывчатый ответ.
3. Разбивай большие файлы
Исследования показывают, что качество рассуждений LLM деградирует примерно после 3 000 токенов. Файл на 500+ строк лучше ревьюить по функциям или классам.
4. Итеративный ревью
После того как исправил Critical-проблемы — прогони промпт снова. AI может найти новые Medium-проблемы, которые раньше были скрыты за более серьёзными.
5. Сохрани как сниппет
В Cursor, Claude Code или VS Code сохрани этот промпт как slash-команду /review или пользовательский сниппет — и запускай в один клик на любом файле.
Быстрые промпты-вариации (копируй сразу)
Только уязвимости OWASP Top 10:
Проверь код на уязвимости из OWASP Top 10. Язык: [ЯЗЫК].
Для каждой: название уязвимости, строка, CWE-номер, фикс.
[КОД]
Ревью git diff перед PR:
Ты — ревьюер безопасности. Проверь этот diff на баги и уязвимости.
Комментируй только изменённые строки, не весь контекст.
[GIT DIFF]
Объяснение для джунов:
Проверь код и найди все проблемы. Объясни каждую простыми словами,
как будто объясняешь стажёру без опыта. Приведи аналогию из реальной жизни.
[КОД]
Источники
- https://graphite.com/guides/effective-prompt-engineering-ai-code-reviews
- https://medium.com/@paul.kalman/15-advanced-ai-prompts-for-2026-developer-workflows-843a73b56bea
- https://docs.bswen.com/blog/2026-04-09-ai-code-review-best-practices/
- https://promptbuilder.cc/blog/prompt-engineering-best-practices-2026