CoreCodeБлог

Руководства

Настройка Claude Code GitHub Actions: @claude в issues и PR

Опубликовано · Проверено

Claude Code GitHub Actions — это GitHub Action, который запускает Claude Code внутри workflows вашего репозитория: упомяните @claude в комментарии к pull request или issue, и Claude проанализирует код, внесёт изменения и запушит коммиты. Эта страница — пошаговая инструкция: быстрая и ручная настройка, базовый workflow, основные входные параметры, кто может запустить выполнение, заметки о стоимости и безопасности и что проверить, если ответа нет. Она следует документации Anthropic Claude Code GitHub Actions, сверенной с ней 30 октября 2026 г.

Главное
  • Быстрая настройка: откройте claude в репозитории, который хотите подключить, выполните /install-github-app и следуйте подсказкам. Работает только с репозиториями на github.com и требует прав администратора репозитория.
  • Ручная настройка состоит из трёх шагов: установить Claude GitHub App, добавить секрет ANTHROPIC_API_KEY или CLAUDE_CODE_OAUTH_TOKEN и скопировать examples/claude.yml в .github/workflows/.
  • Workflow без входного параметра prompt работает в интерактивном режиме и ждёт @claude в комментарии; workflow с параметром prompt работает в режиме автоматизации, не дожидаясь упоминания.
  • Храните учётные данные только в GitHub Secrets и никогда не коммитьте их; давайте workflow только нужные права и проверяйте изменения Claude перед слиянием.
  • Каждый запуск расходует минуты GitHub Actions и токены API; --max-turns, тайм-ауты и управление параллелизмом ограничивают расход.

Что он делает

Claude Code GitHub Action запускает Claude Code внутри workflows вашего репозитория. Упомяните @claude в комментарии к pull request или issue, чтобы Claude проанализировал код, внёс изменения и запушил коммиты. Можно также задать prompt, чтобы он выполнялся автоматически по любому событию GitHub. Anthropic перечисляет такие применения: превращать issues в pull requests, исправлять баги по комментарию и автоматизировать повторяющиеся задачи.

Несколько продуктов носят имя Claude Code. Эта страница о claude-code-action, который настраивается файлами workflow в вашем репозитории. Если вам нужна автоматическая проверка каждого pull request без написания workflow, страница Anthropic указывает на отдельный продукт — Code Review.

Настройка: быстрая или ручная

Для любого пути нужны права администратора репозитория.

ПутьЧто делаетеКогда использовать
Быстрая настройкаВыполните /install-github-app из Claude Code. Claude Code установит GitHub App, добавит секрет аутентификации и подготовит pull request с workflow.Когда вы запускаете Claude Code локально.
Ручная настройкаСами устанавливаете приложение, добавляете секрет и копируете файл workflow в репозиторий.Когда вы не запускаете Claude Code локально, когда команда завершается ошибкой или когда нужен полный контроль над файлами workflow.

Быстрая настройка

/install-github-app работает только с репозиториями на github.com. Если git remote вашего репозитория находится на gitlab.com или bitbucket.org, команда выведет уведомление и завершится, не начиная настройку.

  1. Установите GitHub CLI и аутентифицируйте его командой gh auth login. Claude Code проверяет его наличие и предупреждает, если его нет.
  2. Откройте claude в репозитории, который хотите подключить, выполните /install-github-app и следуйте подсказкам. Claude Code установит Claude GitHub App, а затем настроит секрет аутентификации для workflows.
  3. Как выбирается секрет: если у Claude Code уже есть ключ API, он использует его повторно и предлагает сохранить существующий секрет ANTHROPIC_API_KEY репозитория, если он уже задан. В остальных случаях вы выбираете между созданием долгоживущего токена с вашей подпиской Claude и вставкой ключа API.
  4. Claude Code сохраняет учётные данные как секрет репозитория с именем ANTHROPIC_API_KEY для ключа API или CLAUDE_CODE_OAUTH_TOKEN для токена подписки.
  5. Claude Code пушит ветку с выбранными вами файлами workflow, уже настроенными на этот секрет, и открывает в браузере GitHub с готовым к созданию pull request. Создайте и слейте этот pull request, и @claude заработает в репозитории.

Чтобы остановиться на полпути, нажмите Esc. Уже выполняющийся шаг завершится, а следующие не начнутся. Итоговое сообщение перечисляет, что уже произошло в репозитории, например запушенную ветку или сохранённый секрет. После установки GitHub App Claude Code спрашивает, продолжать ли настройку GitHub Actions. Выберите Skip for now, чтобы остановиться, имея только установленный GitHub App, и позже снова выполните /install-github-app, чтобы завершить шаги с workflow и секретом.

Если вы выберете workflow для проверки, Claude публикует каждую проверку прямо в pull request: встроенным комментарием к каждой найденной проблеме или одним итоговым комментарием, если проблем нет. Claude пропускает некоторые pull requests, например черновики. До v2.1.229 Claude записывал свою проверку только в лог запуска workflow.

Чтобы обновить workflow проверки, созданный более ранней версией, сделайте одно из следующего:

Если вы используете Amazon Bedrock, Google Cloud's Agent Platform или Microsoft Foundry, страница Anthropic отсылает вас к отдельной: Use Claude Code GitHub Actions with cloud providers.

Ручная настройка

1. Установите Claude GitHub App. Установите Claude GitHub App в свой репозиторий. Action опирается на три права приложения:

При установке вы также даёте права, которые используют другие функции Claude; полный набор приведён ниже в разделе «Права GitHub App».

2. Добавьте секрет аутентификации. Добавьте в репозиторий один из следующих секретов в зависимости от способа аутентификации. Руководство GitHub — using secrets in GitHub Actions.

В файлах workflow передайте секрет в соответствующий параметр: anthropic_api_key для ключа API или claude_code_oauth_token для токена OAuth.

3. Скопируйте файл workflow. Скопируйте examples/claude.yml в каталог .github/workflows/ вашего репозитория. Этот файл — рабочий workflow, а не просто пример. В том виде, как он закоммичен, Claude отвечает всякий раз, когда кто-то упоминает @claude в issue или pull request, аутентифицируясь секретом ANTHROPIC_API_KEY. Если вы добавили CLAUDE_CODE_OAUTH_TOKEN, замените в workflow строку anthropic_api_key на claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}.

После настройки проверьте, отметив @claude в комментарии к issue или PR.

Настройка для организации

Быстрая и ручная настройка настраивают один репозиторий за раз. Чтобы развернуть action по всей организации:

Для секрета, общего для нескольких репозиториев, аутентифицируйтесь ключом API из Claude Console, а не токеном OAuth, поскольку токен OAuth привязан к подписке того, кто выполнил claude setup-token. Чтобы вообще не хранить долгоживущий секрет, используйте workload identity federation: action обменивает токен GitHub OIDC этого workflow на доступ к Claude API через сервисный аккаунт Claude Console. Параметры — anthropic_federation_rule_id, anthropic_organization_id и необязательные anthropic_service_account_id и anthropic_workspace_id, а workflow нужно право id-token: write. Настройка на стороне Console описана в руководстве по настройке action.

Права GitHub App

Claude GitHub App общее для всех функций Claude, интегрирующихся с GitHub, включая этот action, Code Review и auto-fix для pull requests в облачных сессиях. У GitHub App один набор прав, поэтому в него входят и права, которые action не использует. При установке приложения вы выдаёте:

ПравоДоступ
ActionsЧтение и запись
AdministrationЧтение
ChecksЧтение и запись
ContentsЧтение и запись
DiscussionsЧтение и запись
IssuesЧтение и запись
MembersЧтение
Merge queuesЧтение
MetadataЧтение
Pull requestsЧтение и запись
Repository hooksЧтение и запись
StatusesЧтение
WorkflowsЧтение и запись

Установка приложения означает согласие на весь набор прав; GitHub не позволяет принять только часть. Если ваша организация требует лишь права, которые использует action, создайте собственный GitHub App с Contents, Issues и Pull requests по руководству action. Собственное приложение покрывает только этот action. Code Review и web auto-fix по-прежнему требуют официального приложения.

Базовый workflow: ответ на @claude

Этот workflow запускает action в интерактивном режиме, так что Claude отвечает всякий раз, когда кто-то упоминает @claude в комментарии к issue или PR.

name: Claude Code
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  claude:
    if: contains(github.event.comment.body, '@claude')
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
      issues: write
      id-token: write
      actions: read
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 1
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

Части этого workflow, которые не являются шаблонным кодом:

Когда workflow на месте, упомяните @claude в любом комментарии к issue или PR вместе с просьбой:

@claude implement this feature based on the issue description
@claude how should I implement user authentication for this endpoint?
@claude fix the TypeError in the user dashboard component

Claude отвечает комментарием в том же issue или PR и обновляет его по ходу работы.

Интерактивный режим, режим автоматизации и кто может запустить выполнение

Action определяет, как запускаться, по конфигурации вашего workflow:

В обоих режимах action выполняет две проверки инициатора до запуска Claude, и запуск завершается ошибкой, если любая проверка его отклоняет:

Основные входные параметры

Это наиболее часто используемые параметры. Каждый соответствует ключу with: в шаге anthropics/claude-code-action.

ПараметрОписаниеОбязателен
promptИнструкции для Claude в виде простого текста или вызова skill. Если не задан, Claude отвечает на триггерную фразу.Нет
claude_argsАргументы CLI, передаваемые Claude Code.Нет
anthropic_api_keyКлюч Claude API.Для Claude API, если вы не используете claude_code_oauth_token или workload identity federation. Не используется для Bedrock, Agent Platform или Foundry.
claude_code_oauth_tokenТокен OAuth для аутентификации с подпиской Claude, создаётся командой claude setup-token.Нет
github_tokenТокен для операций GitHub. Если не задан, action аутентифицируется как Claude GitHub App.Нет
plugin_marketplacesСписок Git URL маркетплейсов плагинов, по одному в строке.Нет
pluginsСписок имён плагинов для установки перед выполнением, по одному в строке.Нет
settingsНастройки Claude Code в виде строки JSON или пути к JSON-файлу настроек.Нет
trigger_phraseТриггерная фраза, на которую отвечает Claude. По умолчанию: @claude.Нет
use_bedrockИспользовать Amazon Bedrock вместо Claude API.Нет
use_vertexИспользовать Google Cloud's Agent Platform вместо Claude API.Нет
use_foundryИспользовать Microsoft Foundry вместо Claude API.Нет

Полный список параметров — в справочнике по конфигурации action.

Передача аргументов CLI через claude_args

Параметр claude_args принимает любой аргумент CLI Claude Code:

claude_args: "--max-turns 5 --model claude-sonnet-5 --mcp-config /path/to/config.json"

Частые аргументы:

Другие примеры workflow

В каталоге examples лежат готовые workflows для разных сценариев. Примеры на этой странице показывают аутентификацию ключом API. Если вы аутентифицируетесь подпиской Claude, замените в любом примере строку anthropic_api_key на claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}.

Автоматическая проверка pull requests (запуск skill)

Параметр prompt принимает как простой текст, так и вызов skill:

Следующий workflow устанавливает плагин code-review и запускает его skill, когда pull request открыт, обновлён, открыт повторно или помечен как готовый к проверке. Он запускает тот же плагин, что и workflow проверки из быстрой настройки. Используйте такой workflow, когда хотите сами управлять prompt, моделью и триггерами. В публичных репозиториях GitHub не передаёт секреты запускам, вызванным pull requests из форков, поэтому проверка выполняется только для pull requests из веток того же репозитория.

name: Code Review
on:
  pull_request:
    types: [opened, synchronize, ready_for_review, reopened]
jobs:
  review:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: read
      issues: read
      id-token: write
    steps:
      - uses: actions/checkout@v6
        with:
          fetch-depth: 1
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          plugin_marketplaces: "https://github.com/anthropics/claude-plugins-official.git"
          plugins: "code-review@claude-plugins-official"
          prompt: "/code-review:code-review --comment ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"
          claude_args: '--allowedTools "mcp__github_inline_comment__create_inline_comment"'

Две строки в этом workflow определяют, куда попадёт проверка:

Claude пропускает черновики и закрытые pull requests, pull requests, которые он считает не требующими проверки, например автоматические или тривиальные, и pull requests, в которых уже есть комментарий Claude.

Запуск по расписанию

С параметром prompt action работает в режиме автоматизации по любому событию GitHub, включая расписание cron. При простом текстовом prompt у Claude нет доступа к оболочке и API GitHub, пока вы не выдадите нужные prompt инструменты через --allowedTools в claude_args или правило permissions.allow в параметре settings. Если вместо этого вызывается skill, Claude может использовать инструменты, которые даёт его frontmatter allowed-tools. GitHub запускает workflows по расписанию только из ветки по умолчанию и в публичных репозиториях отключает расписание после 60 дней без активности в репозитории.

Этот workflow каждый день в 09:00 UTC создаёт отчёт в логе запуска workflow. Его строка claude_args выбирает модель и разрешает два инструмента GitHub MCP. Claude читает коммиты и issues через API GitHub с помощью этих инструментов, поэтому шаг checkout можно опустить:

name: Daily Report
on:
  schedule:
    - cron: "0 9 * * *"
jobs:
  report:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      issues: read
      id-token: write
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "Generate a summary of yesterday's commits and open issues"
          claude_args: |
            --model claude-opus-5-5
            --allowedTools "mcp__github__list_commits,mcp__github__list_issues"

Стандарты проекта в CLAUDE.md

Создайте файл CLAUDE.md в корне репозитория, чтобы описать руководство по стилю кода, критерии проверки, правила проекта и предпочтительные паттерны. Claude следует этим указаниям, создавая PR и отвечая на запросы. Как его написать, описано в настройке CLAUDE.md.

Безопасность: учётные данные и права

Предупреждение: никогда не коммитьте ключи API или токены OAuth прямо в репозиторий. Всегда храните их как GitHub Secrets и ссылайтесь на них в workflows, например anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}.

О механизмах Claude Code, определяющих, что инструменту разрешено, см. режимы разрешений и hooks.

Стоимость и расход

Каждый запуск расходует ресурсы двух видов:

Снизить оба вида расходов можно, давая Claude более чёткий контекст и ограничивая объём работы каждого запуска:

Устранение неполадок

Claude не отвечает на @claude

CI не запускается на коммитах Claude

Ошибки аутентификации

Другие решения — в FAQ action.

Удаление и переход с beta

FAQ

После упоминания @claude ничего не происходит. Что проверить в первую очередь?

По порядку: GitHub App установлено в репозитории, workflows включены, ключ API или токен OAuth задан в секретах репозитория, @claude в комментарии — целое слово (не /claude и не @claude-bot), а у комментирующего пользователя есть доступ на запись. Бот-инициатор отклоняется, если вы не перечислили его в allowed_bots.

Что выбрать: ключ API или токен OAuth?

Подойдёт любой. ANTHROPIC_API_KEY — это ключ API из Claude Console, а CLAUDE_CODE_OAUTH_TOKEN аутентифицируется с вашей подпиской Claude на тарифах Pro, Max, Team и Enterprise. С токеном OAuth запуски используют вашу подписку вместо тарификации API. Для секрета, общего для репозиториев организации, страница Anthropic советует ключ API, потому что токен OAuth привязан к подписке того, кто выполнил claude setup-token.

Можно ли направить этот action на прокси или собственный base URL?

Страница Anthropic не документирует параметр собственного base URL или шлюза, поэтому на этой странице об этом ничего не утверждается. Страница описывает два пути: прямой вызов Claude API по умолчанию (с ключом API или токеном OAuth) либо работа через ваш собственный облачный аккаунт с use_bedrock, use_vertex или use_foundry. Настройка самого Claude Code на вашей машине описана в настройке Claude Code.

Источники