Как подключить Claude Code к GitHub: @claude, авто-ревью PR и GitHub Actions

26 мин. чтения
Bybit
$30,100 + $5,030
100 USDT в подарок
Получить →

Коротко (TL;DR)

Интеграция Claude Code с GitHub — это не одна кнопка, а три разных продукта Anthropic с разной ценой и правами, которые почти все гайды сваливают в кучу:

  1. claude-code-action — GitHub Action, который вы разворачиваете сами (self-hosted). Работает на любом плане с API-ключом, живёт в workflow-файле, платите за токены Claude плюс минуты GitHub Actions.
  2. Code Review — управляемый сервис Anthropic (research preview). Только для тарифов Team и Enterprise, включается тумблером в настройках, стоит $15–25 за одно ревью поверх плана.
  3. GitHub-коннектор в claude.ai — подключение репозитория как контекста в чат или проект. Не ревьюит PR вообще, читает только файлы выбранной ветки.

Что получите после установки первого варианта: пишете @claude в комментарии к issue или pull request — и агент читает задачу, правит код в отдельной ветке и присылает ссылку на создание PR. Что понадобится: репозиторий на github.com, аккаунт Claude (Pro/Max для OAuth-токена либо любой план с API-ключом Anthropic), 10–15 минут на установку. Ниже — как выбрать нужный из трёх продуктов, поставить его командой /install-github-app, собрать два готовых workflow (интерактивный @claude и авто-ревью каждого PR) и не влететь в счёт или уязвимость.

Быстрее всего устареют цены на токены и статус открытого бага (issue #1415) — сверяйте их на первоисточниках Anthropic и GitHub.

Три интеграции Claude Code и GitHub: какая нужна именно вам

Прежде чем запускать /install-github-app, определитесь, что вы вообще подключаете. Anthropic выпустила три независимых продукта, и они не взаимозаменяемы. Выбор неверного — самая частая причина, почему «по гайду не работает».

BYBIT EARNЗаставь крипту работатьПроценты на USDT и BTC без блокировки — деньги остаются под рукой.Разместить
Что выбираетеclaude-code-action (Actions)Code Review (управляемый)GitHub-коннектор claude.ai
Где живётВаш workflow YAML на раннерах GitHubИнфраструктура AnthropicЧат/проект в claude.ai (не Claude Code)
ПланЛюбой с API-ключом (в т.ч. Pro/Max)Только Team / Enterprise, не ZDRЛюбой с доступом к коннекторам
Ревьюит PRДа, если настроитьДа, это его задачаНет
Отвечает на @claudeДаНет (свой триггер @claude review)Нет
Правит кодДа (коммит в ветку)Нет, только комментарииНет
ЦенаТокены API + минуты Actions$15–25 за ревью, отдельным счётомВ рамках подписки
НастройкаWorkflow-файл, секретыТумблер в admin-настройкахКнопка «Sync now»

Как читать таблицу простыми словами:

  • Хотите бесплатно на своём плане и готовы держать YAML-файл в репозитории — берите claude-code-action. Это то, что ставит /install-github-app.
  • Хотите, чтобы каждый PR ревьюился сам, без возни с workflow, и у вас корпоративный тариф — включайте Code Review одним тумблером.
  • Хотите просто обсуждать код в чате Claude, подтянув репозиторий как контекст — это GitHub-коннектор, он не имеет отношения к Actions и ничего не пушит.

Ключевое различие по данным официальной документации: claude-code-action выполняется на ваших раннерах и оплачивается потоком токенов плюс минутами Actions, а управляемый Code Review — это research preview исключительно для Team/Enterprise (кроме организаций с Zero Data Retention), где каждое ревью в среднем стоит $15–25 через usage credits отдельно от плана. Это подтверждают и офиц. страница Code Review, и независимый разбор startdebugging.net одинаковой таблицей сравнения.

Все три подхода объединяет одно: работа идёт вокруг GitHub — в issue, PR или в чате с подтянутым репозиторием. Это принципиально иной сценарий, чем у IDE-редакторов вроде Cursor, где ИИ closing loop держит внутри самого редактора. Сильная сторона Claude Code + GitHub — асинхронность: агент работает в облаке по триггеру, пока вы заняты другим, и оставляет результат прямо в треде PR.

Дальше в статье речь в основном про claude-code-action — это и есть то, что большинство ищет под запросом «claude code github интеграция».

Что делает @claude в issue и PR

@claude — это триггер-фраза, на которую реагирует GitHub Action в комментариях. Написали @claude почини падающий тест в issue или pull request — action просыпается, читает контекст задачи, вносит изменения и отчитывается прямо в треде. По умолчанию триггер — именно @claude, но он привязан к границам слова: @claude-bot, @claude! или claude@mention не сработают, пока вы не поменяете trigger_phrase в конфиге. Кроме комментариев, вызвать агента можно назначением issue (assignee_trigger) или меткой (label_trigger).

Важный момент, который блоги регулярно упрощают до неточности. Многие пишут «Claude открывает пул-реквест». Это не так. По официальной документации в конфигурации по умолчанию Claude не создаёт PR автоматически: он коммитит изменения в новую ветку и присылает ссылку на страницу создания PR — кликнуть и создать пул-реквест должен человек. Формулировка вендора дословно: Claude «commits code changes to a new branch … provides a link to the GitHub PR creation page … The user must click the link and create the PR themselves». Это сделано намеренно — чтобы человек оставался в контуре контроля перед тем, как код уйдёт на ревью.

Из той же логики — жёсткие ограничения на git-операции. Claude только создаёт и пушит коммиты. Он не делает merge, rebase, force push и другие деструктивные операции. Причём запрет зашит в системный промпт агента и действует, даже если вы явно разрешите Bash(git rebase:*) через allowedTools. То есть «сломать историю» или молча смержить ветку @claude по дизайну не может.

Bybit · Rewards Hubдо $30,100Внеси депозит, торгуй 14 дней — и забери награды в Rewards HubЗабрать бонус →

Установка: что делает /install-github-app пошагово

Самый быстрый путь — команда /install-github-app в терминале Claude Code. Она запускает интерактивную установку: ставит GitHub App «Claude» на репозиторий, затем проводит через добавление workflow-файлов и сохранение секрета с ключом. Пошагово это выглядит так:

  1. Откройте терминал в каталоге проекта и запустите claude, затем введите /install-github-app.
  2. Команда откроет установку GitHub App «Claude» — выберите репозиторий (или все репозитории аккаунта) и подтвердите права.
  3. Дальше мастер предложит добавить workflow-файлы (.github/workflows/…) и сохранить секрет авторизации.
  4. С версии Claude Code v2.1.187 и новее на этом шаге можно выбрать Skip for now — тогда установится только App, а к шагам workflow и секрета вы вернётесь позже повторным запуском команды.

Если /install-github-app не сработала (нет прав администратора на репозиторий, корпоративные ограничения), workflow ставится вручную: кладёте YAML в .github/workflows/, добавляете GitHub App через его страницу и вручную создаёте секрет с ключом авторизации. Логика та же — просто без интерактивного мастера.

Права GitHub App «Claude» и авторизация

При установке App запрашивает права на уровне репозитория. Реально используются только три:

ПравоУровеньЗачем
ContentsRead & WriteЧитать и менять файлы
IssuesRead & WriteОтвечать в issue
Pull requestsRead & WriteПушить изменения, готовить PR

Ещё несколько прав (Discussions, Actions read, Checks read, Workflows) App резервирует под будущие фичи — сейчас они не задействованы. Права на запись — намеренно широкие, и именно поэтому вопрос «кто может дёргать @claude» критичен (об этом в разделе про безопасность).

Авторизоваться можно двумя способами, и оба хранятся как секрет репозитория, а не в тексте workflow:

  • ANTHROPIC_API_KEY — обычный API-ключ. Платите за токены по мере использования, подходит любому плану.
  • CLAUDE_CODE_OAUTH_TOKEN — OAuth-токен для подписчиков Pro и Max. Генерируется локально командой claude setup-token (она печатает долгоживущий токен в терминал, не сохраняя его), после чего вы кладёте значение в секрет. Так ревью и правки идут в счёт вашей подписки, а не отдельного API-биллинга.

Что выбрать: если у вас Pro/Max и хочется уложиться в лимиты подписки — OAuth-токен. Если нужен предсказуемый постоянный доступ для CI без привязки к подписке — API-ключ.

GitHub Enterprise Server: важное ограничение

Работаете на self-hosted GitHub Enterprise Server (GHES), а не на github.com? GitHub Actions там поддерживаются, но /install-github-app работает только на github.com — на GHES workflow настраивается вручную. Отдельно: GitHub MCP-сервер на GHES не поддерживается вовсе. Для корпоративной аудитории с закрытым контуром это часто оказывается сюрпризом уже после старта.

Два workflow: интерактивный @claude против авто-ревью каждого PR

Здесь кроется вторая большая путаница. «Настроить @claude» и «настроить автоматическое ревью каждого pull request» — это два разных workflow с разными триггерами. Первый ждёт, пока его позовут; второй срабатывает сам на открытие и обновление PR. Вот они рядом.

Вариант A. Интерактивный @claude — реагирует на упоминание в комментариях:

name: Claude Assistant
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  claude:
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
      issues: write
    steps:
      - uses: actions/checkout@v4
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

Вариант B. Авто-ревью КАЖДОГО PR — без всякого @claude, само на открытие и пуш:

name: Claude Auto Review
on:
  pull_request:
    types: [opened, synchronize]
jobs:
  review:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: write
    steps:
      - uses: actions/checkout@v4
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "Сделай ревью этого PR: логика, баги, безопасность. Комментируй по строкам."

Разница по сути:

  • В варианте A триггеры — issue_comment и pull_request_review_comment: агент спит, пока кто-то не напишет @claude. Дёшево и точечно.
  • В варианте B триггер — pull_request: [opened, synchronize]: opened — новый PR, synchronize — каждый новый пуш в него. Ревью прилетает на каждое обновление без ручного вызова. Удобно, но именно этот вариант умножает счёт (см. контроль стоимости).

Обратите внимание на permissions: в варианте B ревью не правит код, поэтому contents: read — принцип наименьших прав. Экосистема не статична: например, PR #1457 (конец июня 2026) предлагает добавить в action поддержку триггера push и на момент написания ещё проходит ревью — набор поддерживаемых событий со временем расширяется, сверяйтесь с актуальным README репозитория.

Управляемый Code Review: severity, REVIEW.md и /code-review локально

Если у вас Team/Enterprise и не хочется держать YAML, включается управляемый Code Review — тумблером в claude.ai/admin-settings/claude-code. Он сам ревьюит PR на инфраструктуре Anthropic и раскладывает находки по трём уровням:

  • Important (красный) — баг, который стоит починить до мержа.
  • Nit (жёлтый) — мелочь, чинить желательно, но не блокирует.
  • Pre-existing (фиолетовый) — баг уже был в коде, не внесён этим PR.

Важная деталь для тех, кто боится, что ИИ заблокирует релиз: check run всегда завершается с neutral-статусом, то есть ревью никогда не блокирует мерж через branch protection. Оно советует, а не запрещает.

Настраивается Code Review двумя файлами, и их легко перепутать:

  • CLAUDE.md — общие правила проекта для всех задач Claude Code. Code Review читает его как контекст и новые нарушения помечает как nit.
  • REVIEW.md — файл только для ревью. Вставляется в системный промпт каждого агента ревью с наивысшим приоритетом (причём @-импорты в нём не разворачиваются — читается дословно). Через него переопределяют, что считать Important, ограничивают число nits, исключают пути и задают репо-специфичные проверки.

Мини-шаблон REVIEW.md, чтобы перекалибровать строгость под тип репозитория:

# Правила ревью
- Important: только реальные баги, дыры безопасности, потеря данных.
- Не более 3 nits на PR — не засыпай автора мелочами.
- Игнорируй: docs/**, *.md, тесты-фикстуры.
- Проверяй: обработку ошибок в API-хендлерах, отсутствие секретов в коде.

А если GitHub App ставить вообще не хочется, у Claude Code есть локальная команда /code-review — она проверяет дифф прямо в терминале (по умолчанию — коммиты ветки поверх upstream плюс незакоммиченные правки), без всякой интеграции с GitHub. Флаг --comment постит находки инлайн-комментариями в PR, --fix — сразу применяет исправления в рабочую копию, а /code-review ultra --fix запускает более глубокий ultrareview в облаке. Удобно прогнать своё изменение перед пушем.

Цена Claude Code в GitHub: минуты Actions плюс токены API

По соцсетям гуляет тезис в духе «Anthropic выложила GitHub Action, он 100% бесплатный». Это вводит в заблуждение. Сам код action открыт, но его работа стоит денег по двум независимым счётам:

  1. Минуты GitHub Actions — workflow крутится на раннерах GitHub и тратит ваши Actions-минуты, которые GitHub тарифицирует отдельно от Claude.
  2. Токены Claude API — каждый вызов агента расходует входные и выходные токены по ставке модели.

Ставки на 11 июля 2026 года (модель по умолчанию для большинства задач, включая ревью, — Sonnet 5):

МодельВход, за MTokВыход, за MTok
Sonnet 5 (вводная, до 31.08.2026)$2$10
Sonnet 5 (стандарт, с 01.09.2026)$3$15
Opus 4.8$5$25
Haiku 4.5$1$5

Здесь легко нарваться на устаревшую цифру. В community-разборах часто фигурирует «$3/$15 за MTok» — это не текущая цена, а стандартная цена Sonnet 5 после 31 августа 2026. Сейчас действует вводная $2/$10 за миллион токенов входа/выхода. То есть цифра $3/$15 корректна, но это будущая ставка, а не сегодняшняя, — важна точка отсчёта по времени.

Если разбираетесь в линейке моделей и думаете, брать ли для ревью Sonnet или что-то мощнее, — мы отдельно разбирали Sonnet 5 и его цену относительно Opus; для типового ревью Sonnet 5 обычно достаточно, Opus имеет смысл только на самых критичных путях.

Для ориентира по бюджету: по официальным данным о корпоративных развёртываниях средняя стоимость Claude Code — около $13 на разработчика в активный день и $150–250 в месяц, при этом у 90% пользователей расходы держатся ниже $30 в активный день. Это агрегат по всему Claude Code, а не цена конкретно ревью PR, — берите как порядок величины, не как смету.

Отдельно про управляемый Code Review: там счёт другой — $15–25 за одно ревью, и он масштабируется с размером PR и сложностью базы. Режим триггера прямо влияет на итог: «Once after PR creation» — один раз на PR; «After every push» — умножает стоимость на число пушей; «Manual» — ревью только по команде @claude review в комментарии.

Безопасность, права и риски: была уязвимость, её закрыли

Раз GitHub App имеет права на запись, вопрос «кто может его запустить» — не формальность. По умолчанию action срабатывает только от пользователей с write-доступом к репозиторию — это защита от злоупотреблений в публичных репозиториях. Снять ограничение можно параметром allowed_non_write_users, но документация прямо помечает его как RISKY.

Насколько это серьёзно, показал реальный инцидент. Исследователь RyotaK из GMO Flatt Security в январе 2026 раскрыл Anthropic обход проверки триггера: action пропускал любого актора, чьё имя оканчивалось на [bot], без всякого write-доступа. В связке с indirect prompt injection (вредные инструкции прямо в теле issue) атакующий заставлял Claude прочитать /proc/self/environ и вернуть секреты раннера — вплоть до учётных данных для получения токена GitHub App с правом записи. Захват публичного репозитория делался через один открытый issue. Уязвимости присвоили CVSS 7.8, выплатили баг-баунти и исправили в claude-code-action v1.0.94 за четыре дня. Независимо Microsoft Threat Intelligence описала родственный вектор (инструмент Read не подчинялся той же песочнице, что Bash, и мог прочитать /proc/self/environ с ключом) — его закрыли в Claude Code v2.1.128. Эта же схема (бот-триаж + широкие права + prompt injection) уже привела к реальной supply-chain атаке: в феврале 2026 через prompt-injected заголовок issue скомпрометировали npm-пакет cline@2.3.0.

Вывод простой: дыра закрыта, но риск актуален для необновлённых установок — держите action и Claude Code на свежих версиях. И чек-лист для публичных репозиториев:

  • Не ставьте allowed_bots: '*'. По умолчанию боты вообще не могут триггерить action. Со звёздочкой на публичном репозитории любое стороннее GitHub-приложение (даже не установленное у вас и без write-доступа) сможет вызвать action промптом, который оно контролирует. Указывайте явный список ботов.
  • Оставляйте только write-доступ триггера — не включайте allowed_non_write_users без крайней нужды.
  • Минимальные permissions в workflow — ревью, которое не правит код, должно иметь contents: read.
  • Помните про санитизацию prompt injection. Action чистит известные векторы (HTML-комментарии, невидимые символы), но вендор прямо предупреждает: новые способы обхода могут появиться — что кейс RyotaK и подтвердил.

Про секреты стоит знать и про механику самого GitHub: он автоматически маскирует зарегистрированные секреты в логах Actions. Дополнительные чувствительные значения можно замаскировать вручную через ::add-mask::VALUE. Но есть оговорка: если секрет напечатан обходным путём (через промежуточное преобразование), автомаскировка может не сработать — не выводите секреты в лог сознательно.

И честно про открытый недостаток: на момент написания (11 июля 2026) не решён баг #1415 (заведён 16 июня 2026). Суть: при использовании action для security-ревью или других read-only задач он принудительно добавляет Claude git-инструменты записи, которые нельзя отключить через конфигурацию (код в src/modes/tag/index.ts безусловно их подключает). Для сценариев «только чтение» это неприятно — следите за статусом issue.

Контроль стоимости: как не влететь в счёт

Вариант «ревью на каждый push» удобен, но именно он разгоняет расходы — умножает и токены, и минуты Actions. Держите под контролем:

  • --max-turns в claude_args — ограничивает число шагов агента, чтобы он не крутился бесконечно на сложной задаче.
  • Path-фильтры (paths: в workflow) — гоняйте ревью только на изменения в коде, игнорируя доки и ассеты.
  • Manual вместо «на каждый push». В управляемом Code Review режим «Manual» запускает ревью только по команде @claude review — вместо оплаты каждого пуша.
  • Concurrency-контроль GitHub — отменяйте устаревшие прогоны, когда в PR прилетает новый пуш.
  • Sonnet вместо Opus по умолчанию. Opus дороже в 2,5 раза (по вводным ценам до 31.08.2026, после — в 1,67 раза); держите его только для критичных путей, а рутинные ревью отдавайте Sonnet 5.
  • Таймауты workflow — страховка от зависшего прогона, который жжёт минуты.

Типичные ошибки и как их чинить

Многое из того, что выглядит как баг, — задокументированное поведение. Диагностическое дерево:

СимптомПричинаРешение
«You don’t have permission to trigger»Нет write-доступа к репозиторию (защита по умолчанию)Дайте пользователю write-доступ; allowed_non_write_users — только осознанно, это риск
@claude-bot / @claude! не срабатываютТриггер привязан к границе словаПишите ровно @claude или поменяйте trigger_phrase
Claude не открыл PRТак задумано — авто-создание PR выключеноПерейдите по ссылке из его комментария и создайте PR вручную
Claude не сделал rebase/mergeДеструктивные git-операции запрещены системным промптомЭто by design, обойти нельзя даже через allowedTools
CI не запускается на коммитах Claudegithub-actions[bot] не может триггерить вложенные workflow (защита GitHub от циклов)Постите комментарии через Personal Access Token (PAT), а не GITHUB_TOKEN
Не видит старую историю коммитовShallow-клон: PR — depth=20, новые ветки — depth=1Добавьте шаг actions/checkout с depth: 0 до вызова Claude
/install-github-app не работает на корпоративном сервереGHES не поддерживает эту командуНастройте workflow вручную (Actions на GHES работают)

Отдельно держите в голове GitHub-коннектор claude.ai как ещё одну поверхность со своими сбоями: он живёт отдельно от Actions и развивается сам по себе (например, в конце июня 2026 всплывал P0-регресс — коннектор авторизован на уровне аккаунта, но недоступен в чате). Важно понимать его границы: коннектор только подтягивает файлы репозитория в диалог — он не действует автономно, не пушит коммиты и не ревьюит PR. Если вам нужен именно автономный агент, который сам выполняет задачи, а не просто читает контекст, это уже другой класс инструментов — мы отдельно разбирали личный агент OpenClaw с его установкой и реальной себестоимостью. А если нужен именно контекст файлов в диалоге, а не ревью PR, — это коннектор, и чинится он не так, как workflow.

FAQ

Claude сам создаёт пул-реквест? Нет. По умолчанию авто-создание PR выключено: Claude коммитит правки в новую ветку и присылает ссылку на страницу создания PR — финальный клик за человеком. Часть блогов упрощает это до «Claude открывает PR», но по документации вендора это не так.

Чем @claude отличается от управляемого Code Review? @claude в комментариях github — это self-hosted GitHub Action на любом плане с API-ключом: он отвечает на упоминание и может править код. Code Review — управляемый сервис Anthropic только для Team/Enterprise, который сам ревьюит PR за $15–25 через usage credits и код не правит. Это разные продукты с разной ценой.

Это бесплатно? Нет. Код action открыт, но вы платите за минуты GitHub Actions и за токены Claude API (Sonnet 5 — $2/$10 за MTok по вводной цене до 31.08.2026, дальше $3/$15). Управляемый Code Review — отдельные $15–25 за ревью.

Как включить автоматическое ревью каждого PR? Добавьте workflow с триггером pull_request: [opened, synchronize] и промптом на ревью (вариант B выше) — тогда ревью пойдёт на открытие PR и каждый пуш без всякого @claude. Учтите, что это умножает стоимость на число обновлений.

Безопасно ли ставить это на публичный репозиторий? Да, если соблюдать гигиену: не включать allowed_bots: '*' и allowed_non_write_users, держать минимальные permissions, обновлять версии. Была уязвимость с обходом триггера через [bot]-имена (CVSS 7.8), но её закрыли в v1.0.94 — риск остаётся только у необновлённых установок.

Можно ли ревьюить дифф без установки GitHub App? Да. Команда /code-review прямо в терминале Claude Code проверяет локальный дифф без интеграции с GitHub; --comment отправит инлайн-комментарии в PR, --fix применит правки, /code-review ultra запустит глубокое облачное ревью.

Работает ли на GitHub Enterprise Server? Actions — да, но вручную: команда /install-github-app доступна только на github.com, а GitHub MCP-сервер на GHES не поддерживается. Workflow на GHES придётся настраивать руками.

Курс «Claude Code с нуля до продакшена» · модуль «Интеграции и автоматизация». Полная программа и два маршрута обучения — на странице курса.

Предыдущий урок: /loop и фоновые задачи: агент 24/7 · Следующий урок: Claude Code из Telegram

Bybit
$30,100 + $5,030
100 USDT в подарок
Получить →
ТЕГИ:
Поделиться
Связаться:
Крипто- и data-аналитик, инженер-программист (факультет компьютерных наук ХНУРЭ). В IT с 2008 года: администрировал корпоративный мониторинг в «Vodafone Украина», семь лет разрабатывал и продвигал веб-проекты, пять лет руководил маркетингом на метриках — конверсия, CTR, ROI, LTV.Криптовалютными рынками занимаюсь с 2021 года: ончейн-метрики, токеномика, макроэкономические индикаторы. Разработал собственную data-driven модель анализа рынка на 30+ метрик. Стек — Python (pandas, NumPy, SciPy, matplotlib), математическая статистика и EDA; сбор и сверку данных автоматизирую AI-агентами.Принцип — «Don't trust, verify»: каждая цифра проверена по первоисточнику, ключевые — минимум по двум независимым; прогнозы — только сценарии с условиями. Тезис без данных не публикуется.