---
title: Режим делегирования
sidebar:
  order: 5
---

OCR выполняет детерминированные инженерные операции (выбор файлов, разрешение
правил), а основной агент проводит само код-ревью, используя возможности
собственной LLM. На стороне OCR эндпоинт LLM не требуется.

## Когда использовать режим делегирования

Режим делегирования предназначен для AI-агентов программирования по подписке,
таких как Claude Code, Codex, Cursor, Open Code, Qoder и другие, где подписка
на LLM уже включена в основной агент. Вместо настройки отдельного эндпоинта
модели для OCR вы используете существующую квоту подписки основного агента для
проведения ревью.

Используйте режим делегирования, когда:

1. Ваш AI-агент программирования работает по подписке, и вы хотите использовать
   её квоту для код-ревью без дополнительного API-ключа или настройки модели.
2. От OCR требуется только инженерный каркас: фильтрация файлов, разрешение
   правил и логика исключений, а все рассуждения LLM выполняет основной агент.
3. Вы создаёте собственный агентный конвейер, которому нужны структурированные
   входные данные (список файлов и правила) для собственного этапа ревью.

## Предварительные требования

CLI `ocr` должен быть установлен:

```bash
which ocr || npm install -g @alibaba-group/open-code-review
```

Конфигурация LLM (`ocr config set …` или переменные окружения) не требуется:
в режиме делегирования OCR никогда не вызывает LLM на своей стороне.

## Установка навыка / команды

### Claude Code — команда

```bash
mkdir -p .claude/commands
curl -o .claude/commands/delegate-review.md \
  https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md
```

### Любой агент — навык

```bash
npx skills add alibaba/open-code-review --skill open-code-review-delegate
```

Или скопируйте манифест вручную:

```bash
cp -R /path/to/open-code-review/skills/open-code-review-delegate ~/.claude/skills/
```

## Рабочий процесс

### Шаг 1. Предварительный просмотр — определить, что проверять

```bash
ocr delegate preview [--from <ref> --to <ref>] [--commit <hash>] [--exclude <patterns>]
```

Вывод содержит:

- **режим** — workspace / range / commit;
- **метаданные ссылок** — from, to, commit, merge\_base;
- **список проверяемых файлов** — пути, статусы, добавления/удаления;
- **исключённые файлы** — с причиной исключения.

Распространённые варианты вызова:

| Сценарий | Команда |
|----------|---------|
| Изменения рабочей области | `ocr delegate preview` |
| Сравнение веток | `ocr delegate preview --from main --to feature` |
| Один коммит | `ocr delegate preview -c abc123` |

### Шаг 2. Получить правила для файлов

```bash
ocr delegate rule <path1> <path2> ...
```

Передайте проверяемые пути из шага 1. Вывод группируется по содержимому правил:
файлы с одинаковым правилом находятся в одной группе, что позволяет избежать
повторений.

### Шаг 3. Получить diff

Используйте Git напрямую на основе режима и сведений о ссылках из шага 1:

**Режим диапазона** (предоставлен merge\_base):
```bash
git diff <merge_base>..<to> -- <path>
```

**Режим коммита**:
```bash
git show <commit> -- <path>
```

**Режим рабочей области**:
```bash
git diff HEAD -- <path>        # tracked files
cat <path>                     # new untracked files
```

### Шаг 4. Проверить каждый файл

Для каждого проверяемого файла:

1. Получить его diff (шаг 3).
2. Использовать подходящую группу правил (шаг 2) как контрольный список ревью.
3. Провести тщательное ревью, при необходимости исследуя контекст.

### Шаг 5. Подготовить отчёт

Классифицируйте каждое замечание по серьёзности:

- **Critical/High** — ошибки, проблемы безопасности, риски потери данных. Всегда сообщать.
- **Medium** — проблемы производительности, недостаточная обработка ошибок. Сообщать с контекстом.
- **Low** — замечания по стилю, мелкие предложения. Незаметно отбрасывать, если они не несут явной пользы.

## Справочник подкоманд

| Команда | Назначение |
|---------|---------|
| `ocr delegate preview` | Выводит проверяемые файлы и метаданные режима/ссылок. |
| `ocr delegate rule <path...>` | Разрешает правила ревью и группирует их по содержимому. |

## Общие флаги

| Флаг | Описание |
|------|-------------|
| `--from <ref>` | Исходная ссылка для режима диапазона. |
| `--to <ref>` | Целевая ссылка для режима диапазона. |
| `-c, --commit <hash>` | Режим одного коммита. |
| `--repo <path>` | Корень репозитория (по умолчанию текущий рабочий каталог). |
| `--rule <path>` | Путь к пользовательскому rule.json. |
| `--exclude <patterns>` | Разделённые запятыми шаблоны исключения. |
| `-b, --background <text>` | Бизнес-контекст. |
| `-B, --background-file <path>` | Бизнес-контекст из файла Markdown. |

## Сравнение с другими режимами интеграции

| Режим | Кто вызывает LLM? | Сценарий использования |
|------|-------------------|----------|
| [Навык агента](../agent-skill/) | OCR | Агент вызывает `ocr review`; OCR управляет полным процессом ревью. |
| [Команда (Claude Code)](../claude-code/) | OCR | Slash-команда в Claude Code; OCR управляет ревью. |
| **Режим делегирования** | Основной агент | OCR предоставляет каркас; агент управляет ревью. |

## См. также

- [Навык агента](../agent-skill/) — OCR выполняет полный процесс ревью от имени агента.
- [Команда (Claude Code)](../claude-code/) — вариант slash-команды с автоматическим исправлением.
