> ## Documentation Index
> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Локальное код-ревью с помощью /code-review

> Запустите `/code-review` в сессии Claude Code, чтобы найти ошибки в изменениях вашей ветки, направьте ревью на pull request или путь и поручите Claude применить исправления.

`/code-review` — это команда, которую вы вводите в промпт Claude Code в той сессии, где работаете. Claude проверяет изменения в вашей ветке, ищет ошибки корректности и сообщает о найденном в вашем диалоге. В зависимости от модели и уровня effort ревью также охватывает улучшения, связанные с повторным использованием кода, упрощением и эффективностью.

Команда работает на любом тарифном плане. Ревью выполняется в вашей собственной сессии, поэтому оно учитывается в использовании вашего плана или в биллинге API так же, как и остальная часть сессии.

<Note>
  Чтобы каждый pull request в репозитории автоматически проходил ревью на GitHub, см. [Code Review](/docs/ru/code-review) — управляемый сервис, который владелец (Owner) включает для вашей организации.
</Note>

`/review` — это псевдоним `/code-review`. До версии v2.1.223 `/review` была отдельной командой, которая выполняла однопроходное ревью pull request на GitHub в режиме только для чтения.

<Steps>
  <Step title="Запустите /code-review">
    Выполните команду:

    ```text theme={null}
    /code-review
    ```

    Без указания цели ревью охватывает изменения в вашей текущей ветке. Чтобы вместо этого направить ревью на pull request, другую ветку, путь или диапазон коммитов, см. раздел [Выбор объекта ревью](#choose-what-to-review).

    Вы также можете добавить флаги:

    * `--fix`: дополнительно просит Claude применить найденные исправления к рабочему дереву после ревью. Его правки проходят через ваш [режим разрешений](/docs/ru/permission-modes).
    * `--comment`: публикует результаты в pull request на GitHub в виде встроенных комментариев или в [merge request на GitLab](#post-findings-to-a-gitlab-merge-request) в виде одной заметки
  </Step>

  <Step title="Продолжайте работу">
    Ревью выполняется как фоновый [субагент](/docs/ru/sub-agents) с собственным контекстным окном, поэтому оно не заполняет ваш диалог. Результаты появляются в вашем диалоге после завершения ревью.
  </Step>

  <Step title="Действуйте по результатам">
    Попросите Claude исправить то, что нашло ревью. С флагом `--fix` или `--comment` Claude применяет или публикует результаты в рамках ревью, и вас могут попросить одобрить его правки.
  </Step>
</Steps>

<h2 id="choose-what-to-review">
  Выбор объекта ревью
</h2>

Чтобы провести ревью чего-либо, кроме текущей ветки, введите цель после уровня effort и флагов. Claude получает этот текст как цель ревью. Целью может быть номер pull request, имя ветки, путь к файлу или диапазон ревизий Git. Найдите в первом столбце то, что вы хотите проверить, и введите то, что указано во втором столбце:

| Чтобы направить ревью на | Введите |
| :- | :- |
| Вашу текущую ветку и незакоммиченные изменения | `/code-review` |
| Ваши последние 15 коммитов | `/code-review HEAD~15..HEAD` |
| Одну ветку относительно другой | `/code-review main...my-feature` |
| Один коммит, где `abc1234` — хеш коммита | `/code-review abc1234^..abc1234` |
| Pull request по номеру | `/code-review 1234` |
| Путь к файлу или каталогу | `/code-review src/auth` |

Без указания цели `/code-review` проверяет коммиты вашей ветки, опережающие её upstream-ветку, а также ваши незакоммиченные изменения. Если у ветки нет upstream, Claude сравнивает с `main` или с предыдущим коммитом.

С `ultra` Claude Code интерпретирует цель иначе, как описано в разделе [Текст после уровня effort и флагов](#text-after-the-effort-level-and-flags).

<h2 id="what-the-review-reads-and-edits">
  Что ревью читает и редактирует
</h2>

Проверьте следующее перед запуском ревью, особенно с `--fix`:

* **Правки**: без `--fix` инструкции ревью запрашивают у Claude только отчёт. С `--fix` они также просят его применить результаты к вашему рабочему дереву. В любом случае любая правка проходит через ваш режим разрешений.
* **Откат**: фоновое ревью применяет свои правки `--fix` вне [чекпоинтов](/docs/ru/checkpointing#subagent-edits-not-restored) вашей сессии. После такого ревью `/rewind` восстанавливает только те файлы, которые Claude уже редактировал в вашем диалоге. Правки ревью в других файлах остаются, поэтому используйте git, чтобы их откатить. Когда ревью [выполняется в основном режиме](#run-in-the-foreground), оно редактирует рабочее дерево во время вашего собственного хода, поэтому `/rewind` восстанавливает его правки как обычно.
* **Инструкции**: ревью следует вашему `CLAUDE.md`, в том числе при неинтерактивном запуске с `-p`. Оно не читает `REVIEW.md`. Этот файл настраивает управляемый [сервис Code Review](/docs/ru/code-review-customize#use-review-md-for-review-only-rules) для pull request на GitHub.

<h2 id="how-findings-are-reported">
  Как сообщается о результатах
</h2>

Claude сообщает о результатах в виде текста в ответе в обоих этих случаях:

* В сессии терминала, где `/code-review` запускает ревью как [ответвлённый субагент](/docs/ru/skills#run-skills-in-a-subagent)
* При запуске с `-p` с текстовым выводом или выводом в JSON

В хост-приложении, которое запрашивает список результатов, например в [десктопном приложении](/docs/ru/desktop#review-your-code), Claude вместо этого сообщает о результатах ревью через [инструмент `ReportFindings`](/docs/ru/tools-reference). Отчёт отображается как список результатов, и каждая запись показывает расположение в файле, краткое описание в одно предложение и тег категории, например `correctness`, если он есть у результата. Запрос хоста применяется на любом уровне effort и требует Claude Code v2.1.218 или более поздней версии.

Когда Claude позже в сессии исправляет найденные проблемы, он снова сообщает о них. Затем Claude Code помечает каждый результат в обновлённом списке как исправленный, пропущенный или не требующий изменений.

<h2 id="tune-effort-and-arguments">
  Настройка effort и аргументов
</h2>

Помимо `--fix` и `--comment`, команда принимает следующие флаги:

* `--post`: при облачном ревью `ultra` для pull request на `github.com` заранее выбирает публикацию готовых результатов в PR в диалоговом окне запуска. См. [Публикация результатов в pull request](/docs/ru/ultrareview#post-findings-to-the-pull-request). Требуется Claude Code v2.1.227 или более поздней версии.
* `--max-findings <n>`, `--max-findings all` или `--max-findings default`: сообщает до `n` результатов или все результаты с `all` вместо обычного лимита ревью. Когда ревью сообщает результаты через инструмент результатов, лимит составляет 32. Последующие ревью повторно используют введённое значение, пока вы не передадите `--max-findings default`, но значение, переданное при неинтерактивном запуске с `-p`, не запоминается. Требуется Claude Code v2.1.288 или более поздней версии.

Передайте [уровень effort](/docs/ru/model-config#adjust-effort-level), чтобы найти баланс между охватом и уверенностью. На уровне `low` ревью сообщает о результатах, в которых наиболее уверено, поэтому вы видите меньше ложных срабатываний. От `medium` до `max` ревью расширяет охват.

Если вы не вводите уровень, ревью повторно использует последний введённый вами уровень от `low` до `max`, даже из предыдущей сессии. Claude Code показывает уведомление, например `Reusing high effort, the level you typed last time`. Следующие правила определяют, какой уровень используется при запуске:

* **Ввод уровня**: введённый вами уровень, например `/code-review high`, меняет то, что будут повторно использовать последующие запуски
* **Неинтерактивные запуски**: уровень, переданный при неинтерактивном запуске с `-p`, не обновляет запомненный уровень
* **`ultra`**: ревью не использует и не обновляет запомненный уровень
* **Уровень ни разу не вводился**: ревью использует текущий уровень effort сессии

До версии v2.1.223 `/code-review` без уровня всегда использовала текущий уровень effort сессии.

<h3 id="post-findings-to-a-gitlab-merge-request">
  Публикация результатов в merge request на GitLab
</h3>

Когда вы передаёте `--comment` для merge request на GitLab, Claude Code публикует результаты через CLI GitLab `glab`. Требуется Claude Code v2.1.257 или более поздней версии. Если `glab` не установлен, Claude вместо этого выводит результаты в терминал.

Передайте merge request в виде URL или ссылки `!123`. Claude Code рассматривает простой номер или имя ветки как merge request, только если origin рабочей копии находится на `gitlab.com`. Для самостоятельно управляемого экземпляра GitLab передайте URL или форму `!123`.

<h3 id="text-after-the-effort-level-and-flags">
  Текст после уровня effort и флагов
</h3>

После уровня effort и флагов Claude Code читает остаток строки как цель ревью. Аргумент `ultra` меняет эту интерпретацию:

* **С `ultra`**: Claude Code интерпретирует одно слово как базовую ветку или номер PR. Более длинный текст, не являющийся именем ветки или PR, становится [заметкой, прикреплённой к ревью](/docs/ru/ultrareview#pass-a-request-in-plain-words). `/code-review ultra check my auth changes` проверяет вашу текущую ветку, и Claude соотносит результаты с вашей заметкой.
* **Без `ultra`**: всё оставшееся является целью ревью, даже если начинается с имени другой команды. `/code-review /fix-issue 123` проводит ревью с `/fix-issue 123` в качестве текста цели, а не загружает `/fix-issue` как второй [составной скилл](/docs/ru/skills#pass-arguments-to-skills). До версии v2.1.218 команда, указанная после `/code-review`, раскрывалась как отдельный скилл.

<h2 id="run-in-the-foreground">
  Запуск в основном режиме
</h2>

Чтобы ревью выполнялось в основном режиме (не в фоне), сделайте одно из следующего:

* Запустите его в неинтерактивном режиме с флагом `-p` или через Agent SDK. Claude Code дожидается завершения ревью и включает результаты в ответ, за исключением `ultra`, которое [не ожидает облачного ревью](/docs/ru/ultrareview#run-ultrareview-non-interactively).
* Установите [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](/docs/ru/env-vars) в `1`, что также отключает все остальные функции фоновых задач
* Снова запустите `/code-review`, пока предыдущее ревью ещё выполняется

До версии v2.1.218 ревью выполнялось внутри вашего диалога.

<h2 id="let-claude-start-the-review">
  Запуск ревью самим Claude
</h2>

Claude может запустить `/code-review` самостоятельно, без ввода команды с вашей стороны:

* **Когда вы просите обычными словами**: попросите Claude проверить ваши изменения, и он может запустить скилл
* **Из запланированной задачи**: [запланированная задача](/docs/ru/scheduled-tasks) с `/code-review` в качестве промпта запускает ревью

Запланированная задача никогда не запускает [облачное ревью](#escalate-to-ultrareview), поэтому планируйте `/code-review` без аргумента `ultra`.

Чтобы запретить и Claude, и запланированным задачам запускать ревью, сохранив при этом возможность вводить `/code-review` вручную, добавьте запись [`skillOverrides`](/docs/ru/skills#override-skill-visibility-from-settings) в [файл настроек](/docs/ru/settings#where-settings-live), например `~/.claude/settings.json`:

```json theme={null}
{
  "skillOverrides": {
    "code-review": "user-invocable-only"
  }
}
```

До версии v2.1.246 Claude самостоятельно запускал `/code-review` только там, где это включал флаг функции, получаемый от Anthropic. В [сессиях, которые не получают флаги функций](/docs/ru/env-vars#features-that-need-feature-flag-fetching), `/code-review` запускалась только при вводе вручную, а запланированная `/code-review` доходила до Claude как обычный текст.

<h2 id="escalate-to-ultrareview">
  Переход к ultrareview
</h2>

`/code-review ultra --fix` запускает более глубокое [ultrareview](/docs/ru/ultrareview) в облаке, а затем просит Claude применить его результаты к вашему рабочему дереву, когда они вернутся в вашу сессию.

Ultrareview использует собственную область действия:

* **Что сравнивается**: ваша текущая ветка с веткой репозитория по умолчанию, а также незакоммиченные и проиндексированные изменения в рабочем дереве
* **Конфиденциальные файлы**: для незакоммиченных изменений в файлах с именами, похожими на учётные данные или ключи, например файлах `.env` и `*.tfvars`, Claude Code следует правилам [загрузки локального репозитория в облачную сессию](/docs/ru/claude-code-on-the-web#send-local-repositories-without-github)
* **Другая база**: передайте имя ветки, например `/code-review ultra develop`, чтобы сравнить с другой базой

Когда целью является pull request на `github.com`, вы можете поручить Claude [опубликовать готовые результаты в PR](/docs/ru/ultrareview#post-findings-to-the-pull-request) в виде комментария от вашей учётной записи GitHub. Требуется Claude Code v2.1.227 или более поздней версии.

<Note>
  Ultrareview требует аутентификации с учётной записью claude.ai. Оно недоступно в Amazon Bedrock, Google Cloud's Agent Platform или Microsoft Foundry, а также для организаций с включённым Zero Data Retention или применённой [конфигурацией HIPAA](/docs/ru/hipaa-setup). В этих случаях `/code-review ultra` вместо этого запускает локальное ревью в вашей сессии. Организации, использующие [ключи шифрования, управляемые клиентом](https://platform.claude.com/docs/en/manage-claude/cmek) (CMEK), не могут запускать ultrareview. Чтобы проверить изменения локально, выполните `/code-review`.
</Note>

Чтобы запустить облачное ревью из скрипта или задания CI, используйте [подкоманду `claude ultrareview`](/docs/ru/ultrareview#run-ultrareview-non-interactively), которая дожидается результатов и выводит их в stdout.

<h2 id="change-or-build-on-the-review">
  Изменение ревью и создание собственного на его основе
</h2>

`/code-review` — это [встроенный скилл](/docs/ru/skills#bundled-skills): его инструкции встроены в Claude Code, поэтому на диске нет файла `SKILL.md`, который можно открыть или отредактировать. Чтобы каждое ревью следовало правилам проекта, добавьте их в ваш `CLAUDE.md`. Чтобы пойти дальше, начните с одной из этих страниц:

* **Замена команды**: скилл проекта или личный скилл с именем `code-review` запускается вместо встроенного, а псевдоним `/review` продолжает запускать встроенное ревью. См. [Разрешение конфликтов скиллов с одинаковыми именами](/docs/ru/skills#resolve-skills-that-share-a-name).
* **Создание собственного ревьюера**: напишите [субагента](/docs/ru/sub-agents)-ревьюера или [скилл](/docs/ru/skills) для ревью
* **Использование смежной команды**: [`/simplify`](/docs/ru/commands) проверяет только возможности улучшения кода и применяет свои исправления, а [`/verify`](/docs/ru/commands) запускает ваше приложение, чтобы подтвердить, что изменение работает

До версии v2.1.147 команда называлась `/simplify` и по умолчанию применяла исправления. Если вы использовали `/simplify` в скриптах для поиска ошибок, перейдите на `/code-review --fix`.

<h2 id="related-resources">
  Связанные ресурсы
</h2>

* [Code Review](/docs/ru/code-review): управляемый сервис, который проводит ревью каждого pull request на GitHub для вашей организации
* [Ultrareview](/docs/ru/ultrareview): настройка, ограничения и стоимость более глубокого облачного ревью
* [Команды](/docs/ru/commands): краткий справочник по `/code-review`, `/review`, `/simplify` и `/verify`
* [Скиллы](/docs/ru/skills): как работают встроенные скиллы и как написать собственный
