Claude Info
Код-ревью

Open Code Review

spencermarx/open-code-review

AI-инструмент для командного ревью кода: несколько агентов-рецензентов независимо анализируют код, спорят о находках и выдают единый приоритизированный отчёт. Поддержка 28 персон, требований, GitHub PR и дашборда.

Установка

terminal
bash
git clone https://github.com/spencermarx/open-code-review.git

README


Быстрый старт

Требования: Node.js >= 20, Git и AI-ассистент для разработки.

bash
# 1. Установите CLI глобально
npm install -g @open-code-review/cli

# 2. Инициализируйте OCR в вашем проекте
cd your-project
ocr init

# 3. Запустите дашборд и выполните первое ревью
ocr dashboard

В браузере откроется дашборд OCR — можно запускать первое ревью.

ocr init определяет установленные AI-инструменты (Claude Code, Cursor, Windsurf и ещё 11) и автоматически настраивает каждый из них. Затем откройте дашборд, чтобы запустить ревью, просмотреть результаты и управлять рабочим процессом прямо из браузера.

Или запускайте ревью напрямую из AI-ассистента:

/ocr:review # Claude Code / Cursor /ocr-review # Windsurf / другие инструменты /ocr-review Review against openspec/spec.md # С требованиями

Зачем Open Code Review?

Когда вы просите AI «проверить мой код», вы получаете единственную точку зрения — один проход, один набор приоритетов. OCR меняет это принципиально:

  • Мультиагентное дублирование — несколько экземпляров рецензентов независимо изучают ваш код. Разные паттерны внимания выявляют разные проблемы. То, что пропустит один рецензент, найдёт другой.
  • Дискуссия перед синтезом — рецензенты не просто формируют находки, они их обсуждают. Оспаривают допущения, проверяют опасения и поднимают вопросы, которые ни один рецензент не задал бы в одиночку.
  • Полностью настраиваемые команды — выбирайте из 28 персон рецензентов (включая известных инженеров: Martin Fowler, Kent Beck, Sandi Metz), создавайте собственных постоянных рецензентов или описывайте разовых рецензентов прямо в запросе.
  • Учёт требований — передайте спецификацию, предложение или критерии приёмки. Каждый рецензент оценивает код относительно ваших требований, а не только общих практик.
  • Контекст проекта — OCR извлекает ваши стандарты из CLAUDE.md, .cursorrules, конфигов OpenSpec и других распространённых источников. Рецензенты применяют ваши соглашения.
┌─────────────┐ │ Tech Lead │ ← Оркестрирует ревью └──────┬──────┘ │ ┌─────────────────┼─────────────────┐ │ │ │ ▼ ▼ ▼ ┌─────────────────┐ ┌─────────────┐ ┌─────────────────┐ │ Ваша команда │ │ Ваша команда│ │ Ваша команда │ │ рецензентов │ │ рецензентов │ │ рецензентов │ └─────────────────┘ └─────────────┘ └─────────────────┘ │ │ │ └─────────────────┼─────────────────┘ │ ┌──────▼──────┐ │ Дискуссия │ ← Рецензенты обсуждают находки └──────┬──────┘ │ ┌──────▼──────┐ │ Синтез │ ← Единая приоритизированная обратная связь └─────────────┘

Примечание: OCR не заменяет ревью кода человеком. Цель — снизить нагрузку на людей-рецензентов, выявляя проблемы раньше, чтобы человеческое ревью было быстрее и сосредоточено на том, что машины не могут поймать.


Содержание


Дашборд

Дашборд — рекомендуемый способ запускать ревью, просматривать результаты и управлять рабочим процессом. Запустите его командой ocr dashboard.

Запуск ревью и карт

Command Center позволяет запускать мультиагентные ревью кода и карты ревью прямо из дашборда. Укажите цели, добавьте требования, включите режим чистого старта — и наблюдайте за выводом терминала в реальном времени по мере работы агентов.

Просмотр и триаж ревью

Просматривайте баннеры вердиктов, карточки отдельных рецензентов, таблицы находок и межрецензентские дискуссии для каждого раунда ревью. Устанавливайте статус триажа для находок (требует ревью, в работе, изменения внесены, принято к сведению, отклонено) с фильтрацией и сортировкой.

Изучение карт ревью кода

Навигация по большим наборам изменений с разбивкой по секциям, отрисованными графами зависимостей Mermaid и отслеживанием прогресса на уровне файлов.

Публикация в GitHub

Два режима публикации со страницы раунда ревью:

  • Публикация командного ревью — публикует полный синтезированный отчёт команды как один комментарий к PR.
  • Публикация отдельных рецензентов — публикует отдельные комментарии от каждого рецензента, сохраняя индивидуальные голоса и перспективы.

Рабочие процессы в IDE и CLI

Все возможности OCR доступны напрямую из вашего AI-ассистента или терминала.

Команды AI-ассистента

/ocr:review # Базовое ревью /ocr:review src/api/ # Конкретная директория /ocr:review Review against docs/requirements.md # С требованиями /ocr:map # Карта ревью кода /ocr:map src/ # Карта конкретной директории

Команды CLI

bash
ocr review                          # Ревью изменений в рабочей директории
ocr review src/api/                 # Ревью конкретной директории
ocr review --fresh                  # Начать новую сессию
ocr map                             # Сгенерировать карту ревью кода
ocr dashboard                       # Запустить веб-дашборд
ocr init                            # Инициализировать OCR в проекте
ocr config                          # Управление конфигурацией

Возможности

Мультиагентное ревью

Одновременно запускает несколько агентов-рецензентов, каждый из которых независимо анализирует ваш код. Агенты работают параллельно, затем их находки синтезируются в единый приоритизированный отчёт.

Каждый рецензент:

  • Независимо изучает весь набор изменений
  • Применяет собственную экспертизу и приоритеты
  • Формирует структурированные находки с уровнями серьёзности
  • Участвует в дискуссии с другими рецензентами

Карты ревью кода

Для больших наборов изменений карты ревью кода дают структурированный обзор перед детальным ревью:

  • Разбивка по логическим секциям с описаниями
  • Граф зависимостей между компонентами (Mermaid)
  • Оценка сложности и риска по секциям
  • Рекомендуемый порядок ревью
  • Отслеживание прогресса по файлам
bash
ocr map                    # Карта текущих изменений
ocr map src/               # Карта конкретной директории
/ocr:map                   # Из AI-ассистента

Ревью с учётом требований

Передайте спецификацию или требования — каждый рецензент будет оценивать код относительно них:

bash
ocr review --requirements docs/spec.md
ocr review --requirements "Реализовать аутентификацию через JWT с истечением через 24 часа"
/ocr:review Review against docs/api-spec.md

Рецензенты явно проверяют:

  • Соответствие функциональным требованиям
  • Корректность реализации
  • Пропущенные или неполные требования
  • Пограничные случаи из спецификации

Дискуссия рецензентов

После того как каждый рецензент завершает независимый анализ, они участвуют в структурированной дискуссии:

  • Оспаривают или подтверждают находки друг друга
  • Выявляют противоречия в оценках
  • Поднимают вопросы, которые возникают только при сравнении перспектив
  • Достигают консенсуса по приоритетам

Дискуссия отображается в дашборде и включается в финальный синтез.

Публикация в GitHub PR

Публикуйте результаты ревью прямо в GitHub PR:

ocr review --post-to-github

Или используйте кнопки публикации в дашборде. Поддерживаются два режима:

  • Командный отчёт — один синтезированный комментарий
  • Отдельные рецензенты — отдельные комментарии от каждого рецензента

Требуется переменная окружения GITHUB_TOKEN с правами на запись в PR.

Многораундовые ревью

OCR отслеживает историю ревью в рамках сессии:

  • Каждый запуск ocr review создаёт новый раунд
  • Рецензенты видят предыдущие находки и могут ссылаться на них
  • Дашборд показывает все раунды с навигацией
  • Используйте --fresh для начала новой сессии

Пользовательские рецензенты

Создавайте постоянных рецензентов, адаптированных под ваш проект:

yaml
# .ocr/reviewers/security-reviewer.yaml
name: Security Reviewer
description: Специализируется на уязвимостях безопасности и OWASP Top 10
focus_areas:
  - Аутентификация и авторизация
  - Валидация входных данных
  - SQL-инъекции и XSS
  - Управление секретами
personality: Методичный, ориентированный на детали, скептичный

Персоны известных инженеров

OCR включает 28 встроенных персон, основанных на известных инженерах и архетипах:

  • Martin Fowler — рефакторинг, паттерны проектирования, чистый код
  • Kent Beck — TDD, простой дизайн, экстремальное программирование
  • Sandi Metz — объектно-ориентированный дизайн, SOLID-принципы
  • И многие другие — специалисты по безопасности, производительности, доступности и т.д.

Выбирайте персоны в конфигурации или через дашборд.

Разовые рецензенты

Описывайте специализированных рецензентов прямо в запросе без сохранения конфигурации:

/ocr:review with a database performance expert and a junior developer perspective

Разовые рецензенты существуют только для текущего запуска.

Прогресс в реальном времени

Наблюдайте за работой агентов в реальном времени:

  • Вывод терминала в дашборде
  • Статус каждого рецензента (в работе / завершено)
  • Прогресс фазы дискуссии
  • Уведомление о завершении

Работа с замечаниями

Отслеживайте прогресс по находкам ревью:

  • Устанавливайте статус триажа для каждой находки
  • Фильтруйте по серьёзности, рецензенту, статусу
  • Экспортируйте находки для интеграции с системами задач
  • Отслеживайте прогресс между раундами

Заметки сессии и чат

Добавляйте контекст к сессиям ревью:

  • Заметки сессии для документирования решений
  • Чат с AI для уточнения находок
  • История сохраняется между раундами

Конфигурация

OCR хранит конфигурацию в .ocr/ в корне вашего проекта.

Основная конфигурация

yaml
# .ocr/config.yaml
reviewers:
  count: 3                    # Количество рецензентов (по умолчанию: 3)
  personas:                   # Конкретные персоны (опционально)
    - martin-fowler
    - kent-beck
    - security-specialist

review:
  scope: git-diff             # git-diff | staged | directory
  include_patterns:           # Паттерны файлов для включения
    - "src/**"
    - "lib/**"
  exclude_patterns:           # Паттерны файлов для исключения
    - "**/*.test.ts"
    - "**/node_modules/**"

github:
  auto_post: false            # Автоматически публиковать в PR
  post_mode: team             # team | individual

Конфигурация рецензентов

Создавайте пользовательских рецензентов в .ocr/reviewers/:

yaml
# .ocr/reviewers/my-reviewer.yaml
name: API Design Reviewer
description: Фокусируется на согласованности REST API и соответствии OpenAPI
focus_areas:
  - Соглашения об именовании эндпоинтов
  - Структуры запросов/ответов
  - Коды статусов HTTP
  - Документация API
personality: Педантичный по стандартам, практичный по реализации

Контекст проекта

OCR автоматически обнаруживает и использует:

  • CLAUDE.md — инструкции для Claude Code
  • .cursorrules — правила Cursor
  • .ocr/context.md — явный контекст OCR
  • openspec/ — конфигурации OpenSpec

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

ocr init

Инициализирует OCR в текущем проекте. Определяет установленные AI-инструменты и настраивает интеграции.

bash
ocr init
ocr init --force    # Переинициализировать существующую конфигурацию

ocr review

Запускает мультиагентное ревью кода.

bash
ocr review                              # Ревью текущих изменений
ocr review src/                         # Ревью конкретной директории
ocr review --requirements spec.md       # С файлом требований
ocr review --requirements "текст"       # С инлайн-требованиями
ocr review --fresh                      # Начать новую сессию
ocr review --reviewers 5                # Переопределить количество рецензентов
ocr review --post-to-github             # Публиковать результаты в GitHub PR

ocr map

Генерирует карту ревью кода для навигации по большим наборам изменений.

bash
ocr map                    # Карта текущих изменений
ocr map src/               # Карта конкретной директории
ocr map --fresh            # Начать новую сессию

ocr dashboard

Запускает веб-дашборд.

bash
ocr dashboard              # Запустить на порту по умолчанию (4000)
ocr dashboard --port 8080  # Запустить на конкретном порту

ocr config

Управление конфигурацией OCR.

bash
ocr config show            # Показать текущую конфигурацию
ocr config set reviewers.count 5
ocr config reset           # Сбросить до значений по умолчанию

Обновление OCR

npm update -g @open-code-review/cli

После обновления CLI переинициализируйте интеграции с AI-инструментами:

ocr init --force

Поддерживаемые AI-инструменты

OCR интегрируется с ведущими AI-ассистентами для разработки:

ИнструментТип интеграции
Claude CodeНативные команды (/ocr:review)
CursorКоманды курсора (/ocr:review)
WindsurfКоманды (/ocr-review)
GitHub CopilotКоманды чата
ClineКоманды
AiderКоманды
ContinueКоманды
Zed AIКоманды
Neovim AIКоманды
Emacs AIКоманды
JetBrains AIКоманды
VS Code AIКоманды
ДругиеCLI (ocr review)

Требования

  • Node.js >= 20
  • Git (для определения области ревью на основе diff)
  • AI-ассистент с доступом к API Anthropic (Claude) или совместимому
  • Переменная окружения ANTHROPIC_API_KEY (если не настроена через AI-инструмент)
  • GITHUB_TOKEN (опционально, для публикации в GitHub PR)

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