Claude Code GitHub Actions привносит автоматизацию на основе ИИ в ваш рабочий процесс GitHub. С простым упоминанием @claude в любом PR или issue, Claude может анализировать ваш код, создавать pull request’ы, реализовывать функции и исправлять ошибки - все это следуя стандартам вашего проекта.

Claude Code GitHub Actions построен на основе Claude Code SDK, который обеспечивает программную интеграцию Claude Code в ваши приложения. Вы можете использовать SDK для создания пользовательских рабочих процессов автоматизации помимо GitHub Actions.

Зачем использовать Claude Code GitHub Actions?

  • Мгновенное создание PR: Опишите, что вам нужно, и Claude создаст полный PR со всеми необходимыми изменениями
  • Автоматизированная реализация кода: Превращайте issues в рабочий код одной командой
  • Следует вашим стандартам: Claude соблюдает ваши рекомендации CLAUDE.md и существующие паттерны кода
  • Простая настройка: Начните работу за минуты с нашим установщиком и API ключом
  • Безопасность по умолчанию: Ваш код остается на раннерах Github

Что может делать Claude?

Claude Code предоставляет мощный GitHub Action, который трансформирует то, как вы работаете с кодом:

Claude Code Action

Этот GitHub Action позволяет вам запускать Claude Code в ваших рабочих процессах GitHub Actions. Вы можете использовать это для создания любого пользовательского рабочего процесса на основе Claude Code.

Просмотреть репозиторий →

Настройка

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

Самый простой способ настроить этот action - через Claude Code в терминале. Просто откройте claude и выполните /install-github-app.

Эта команда проведет вас через настройку GitHub приложения и необходимых секретов.

  • Вы должны быть администратором репозитория для установки GitHub приложения и добавления секретов - Этот метод быстрого старта доступен только для прямых пользователей Anthropic API. Если вы используете AWS Bedrock или Google Vertex AI, пожалуйста, смотрите раздел Использование с AWS Bedrock & Google Vertex AI.

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

Если команда /install-github-app не работает или вы предпочитаете ручную настройку, пожалуйста, следуйте этим инструкциям по ручной настройке:

  1. Установите Claude GitHub приложение в ваш репозиторий: https://github.com/apps/claude
  2. Добавьте ANTHROPIC_API_KEY в секреты вашего репозитория (Узнайте, как использовать секреты в GitHub Actions)
  3. Скопируйте файл рабочего процесса из examples/claude.yml в .github/workflows/ вашего репозитория

После завершения быстрой настройки или ручной настройки, протестируйте action, отметив @claude в комментарии issue или PR!

Обновление с Beta

Claude Code GitHub Actions v1.0 вводит критические изменения, которые требуют обновления ваших файлов рабочих процессов для обновления до v1.0 с beta версии.

Если вы в настоящее время используете beta версию Claude Code GitHub Actions, мы рекомендуем обновить ваши рабочие процессы для использования GA версии. Новая версия упрощает конфигурацию, добавляя мощные новые функции, такие как автоматическое определение режима.

Основные изменения

Все пользователи beta должны внести эти изменения в свои файлы рабочих процессов для обновления:

  1. Обновите версию action: Измените @beta на @v1
  2. Удалите конфигурацию режима: Удалите mode: "tag" или mode: "agent" (теперь автоматически определяется)
  3. Обновите входные данные промпта: Замените direct_prompt на prompt
  4. Переместите опции CLI: Конвертируйте max_turns, model, custom_instructions и т.д. в claude_args

Справочник критических изменений

Старый Beta входНовый v1.0 вход
mode(Удален - автоматически определяется)
direct_promptprompt
override_promptprompt с переменными GitHub
custom_instructionsclaude_args: --system-prompt
max_turnsclaude_args: --max-turns
modelclaude_args: --model
allowed_toolsclaude_args: --allowedTools
disallowed_toolsclaude_args: --disallowedTools
claude_envsettings формат JSON

Пример до и после

Beta версия:

- uses: anthropics/claude-code-action@beta
  with:
    mode: "tag"
    direct_prompt: "Review this PR for security issues"
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    custom_instructions: "Follow our coding standards"
    max_turns: "10"
    model: "claude-3-5-sonnet-20241022"

GA версия (v1.0):

- uses: anthropics/claude-code-action@v1
  with:
    prompt: "Review this PR for security issues"
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    claude_args: |
      --system-prompt "Follow our coding standards"
      --max-turns 10
      --model claude-sonnet-4-20250514

Action теперь автоматически определяет, запускаться ли в интерактивном режиме (отвечает на упоминания @claude) или режиме автоматизации (запускается немедленно с промптом) на основе вашей конфигурации.

Примеры использования

Claude Code GitHub Actions может помочь вам с различными задачами. Директория примеров содержит готовые к использованию рабочие процессы для разных сценариев.

Базовый рабочий процесс

name: Claude Code
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  claude:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          # Отвечает на упоминания @claude в комментариях

Использование slash команд

name: Code Review
on:
  pull_request:
    types: [opened, synchronize]
jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "/review"
          claude_args: "--max-turns 5"

Пользовательская автоматизация с промптами

name: Daily Report
on:
  schedule:
    - cron: "0 9 * * *"
jobs:
  report:
    runs-on: ubuntu-latest
    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-4-1-20250805"

Общие случаи использования

В комментариях 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 автоматически проанализирует контекст и ответит соответствующим образом.

Лучшие практики

Конфигурация CLAUDE.md

Создайте файл CLAUDE.md в корне вашего репозитория для определения рекомендаций по стилю кода, критериев обзора, правил, специфичных для проекта, и предпочтительных паттернов. Этот файл направляет понимание Claude стандартов вашего проекта.

Соображения безопасности

Никогда не коммитьте API ключи напрямую в ваш репозиторий!

Всегда используйте GitHub Secrets для API ключей:

  • Добавьте ваш API ключ как секрет репозитория с именем ANTHROPIC_API_KEY
  • Ссылайтесь на него в рабочих процессах: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
  • Ограничьте разрешения action только необходимыми
  • Просматривайте предложения Claude перед слиянием

Всегда используйте GitHub Secrets (например, ${{ secrets.ANTHROPIC_API_KEY }}) вместо жесткого кодирования API ключей напрямую в ваших файлах рабочих процессов.

Оптимизация производительности

Используйте шаблоны issues для предоставления контекста, держите ваш CLAUDE.md кратким и сфокусированным, и настройте соответствующие таймауты для ваших рабочих процессов.

Затраты CI

При использовании Claude Code GitHub Actions, учитывайте связанные затраты:

Затраты GitHub Actions:

  • Claude Code работает на раннерах, размещенных на GitHub, которые потребляют ваши минуты GitHub Actions
  • Смотрите документацию по биллингу GitHub для подробного ценообразования и лимитов минут

Затраты API:

  • Каждое взаимодействие Claude потребляет API токены на основе длины промптов и ответов
  • Использование токенов варьируется в зависимости от сложности задачи и размера кодовой базы
  • Смотрите страницу ценообразования Claude для текущих тарифов токенов

Советы по оптимизации затрат:

  • Используйте конкретные команды @claude для уменьшения ненужных API вызовов
  • Настройте соответствующий --max-turns в claude_args для предотвращения чрезмерных итераций
  • Установите таймауты на уровне рабочего процесса для избежания неконтролируемых заданий
  • Рассмотрите использование контролей параллелизма GitHub для ограничения параллельных запусков

Примеры конфигурации

Claude Code Action v1 упрощает конфигурацию с унифицированными параметрами:

- uses: anthropics/claude-code-action@v1
  with:
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    prompt: "Your instructions here" # Опционально
    claude_args: "--max-turns 5" # Опциональные CLI аргументы

Ключевые функции:

  • Унифицированный интерфейс промпта - Используйте prompt для всех инструкций
  • Slash команды - Предварительно созданные промпты как /review или /fix
  • Проброс CLI - Любой аргумент Claude Code CLI через claude_args
  • Гибкие триггеры - Работает с любым событием GitHub

Посетите директорию примеров для полных файлов рабочих процессов.

При ответе на комментарии issue или PR, Claude автоматически отвечает на упоминания @claude. Для других событий используйте параметр prompt для предоставления инструкций.

Использование с AWS Bedrock & Google Vertex AI

Для корпоративных сред вы можете использовать Claude Code GitHub Actions с вашей собственной облачной инфраструктурой. Этот подход дает вам контроль над резидентностью данных и биллингом, сохраняя ту же функциональность.

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

Перед настройкой Claude Code GitHub Actions с облачными провайдерами, вам нужно:

Для Google Cloud Vertex AI:

  1. Проект Google Cloud с включенным Vertex AI
  2. Настроенная Workload Identity Federation для GitHub Actions
  3. Сервисный аккаунт с необходимыми разрешениями
  4. GitHub App (рекомендуется) или использование стандартного GITHUB_TOKEN

Для AWS Bedrock:

  1. AWS аккаунт с включенным Amazon Bedrock
  2. Настроенный GitHub OIDC Identity Provider в AWS
  3. IAM роль с разрешениями Bedrock
  4. GitHub App (рекомендуется) или использование стандартного GITHUB_TOKEN
1

Создайте пользовательское GitHub App (Рекомендуется для 3P провайдеров)

Для лучшего контроля и безопасности при использовании 3P провайдеров, таких как Vertex AI или Bedrock, мы рекомендуем создать ваше собственное GitHub App:

  1. Перейдите на https://github.com/settings/apps/new
  2. Заполните базовую информацию:
    • GitHub App name: Выберите уникальное имя (например, “YourOrg Claude Assistant”)
    • Homepage URL: Веб-сайт вашей организации или URL репозитория
  3. Настройте параметры приложения:
    • Webhooks: Снимите флажок “Active” (не нужно для этой интеграции)
  4. Установите необходимые разрешения:
    • Repository permissions:
      • Contents: Read & Write
      • Issues: Read & Write
      • Pull requests: Read & Write
  5. Нажмите “Create GitHub App”
  6. После создания нажмите “Generate a private key” и сохраните загруженный файл .pem
  7. Запишите ваш App ID со страницы настроек приложения
  8. Установите приложение в ваш репозиторий:
    • Со страницы настроек вашего приложения нажмите “Install App” в левой боковой панели
    • Выберите ваш аккаунт или организацию
    • Выберите “Only select repositories” и выберите конкретный репозиторий
    • Нажмите “Install”
  9. Добавьте приватный ключ как секрет в ваш репозиторий:
    • Перейдите в Settings вашего репозитория → Secrets and variables → Actions
    • Создайте новый секрет с именем APP_PRIVATE_KEY с содержимым файла .pem
  10. Добавьте App ID как секрет:
  • Создайте новый секрет с именем APP_ID с ID вашего GitHub App

Это приложение будет использоваться с action actions/create-github-app-token для генерации токенов аутентификации в ваших рабочих процессах.

Альтернатива для Anthropic API или если вы не хотите настраивать собственное Github приложение: Используйте официальное приложение Anthropic:

  1. Установите с: https://github.com/apps/claude
  2. Дополнительная конфигурация для аутентификации не нужна
2

Настройте аутентификацию облачного провайдера

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

3

Добавьте необходимые секреты

Добавьте следующие секреты в ваш репозиторий (Settings → Secrets and variables → Actions):

Для Anthropic API (Прямой):

  1. Для аутентификации API:

  2. Для GitHub App (если используете собственное приложение):

    • APP_ID: ID вашего GitHub App
    • APP_PRIVATE_KEY: Содержимое приватного ключа (.pem)

Для Google Cloud Vertex AI

  1. Для аутентификации GCP:

    • GCP_WORKLOAD_IDENTITY_PROVIDER
    • GCP_SERVICE_ACCOUNT
  2. Для GitHub App (если используете собственное приложение):

    • APP_ID: ID вашего GitHub App
    • APP_PRIVATE_KEY: Содержимое приватного ключа (.pem)

Для AWS Bedrock

  1. Для аутентификации AWS:

    • AWS_ROLE_TO_ASSUME
  2. Для GitHub App (если используете собственное приложение):

    • APP_ID: ID вашего GitHub App
    • APP_PRIVATE_KEY: Содержимое приватного ключа (.pem)
4

Создайте файлы рабочих процессов

Создайте файлы рабочих процессов GitHub Actions, которые интегрируются с вашим облачным провайдером. Примеры ниже показывают полные конфигурации как для AWS Bedrock, так и для Google Vertex AI:

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

Claude не отвечает на команды @claude

Проверьте, что GitHub App установлено правильно, убедитесь, что рабочие процессы включены, убедитесь, что API ключ установлен в секретах репозитория, и подтвердите, что комментарий содержит @claude (не /claude).

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

Убедитесь, что вы используете GitHub App или пользовательское приложение (не пользователя Actions), проверьте, что триггеры рабочего процесса включают необходимые события, и проверьте, что разрешения приложения включают триггеры CI.

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

Подтвердите, что API ключ действителен и имеет достаточные разрешения. Для Bedrock/Vertex проверьте конфигурацию учетных данных и убедитесь, что секреты названы правильно в рабочих процессах.

Расширенная конфигурация

Параметры Action

Claude Code Action v1 использует упрощенную конфигурацию:

ПараметрОписаниеОбязательный
promptИнструкции для Claude (текст или slash команда)Нет*
claude_argsCLI аргументы, передаваемые в Claude CodeНет
anthropic_api_keyAnthropic API ключДа**
github_tokenGitHub токен для доступа к APIНет
trigger_phraseПользовательская фраза триггера (по умолчанию: “@claude”)Нет
use_bedrockИспользовать AWS Bedrock вместо Anthropic APIНет
use_vertexИспользовать Google Vertex AI вместо Anthropic APIНет

*Prompt опционален - когда опущен для комментариев issue/PR, Claude отвечает на фразу триггера
**Обязателен для прямого Anthropic API, не для Bedrock/Vertex

Использование claude_args

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

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

Общие аргументы:

  • --max-turns: Максимальные повороты разговора (по умолчанию: 10)
  • --model: Модель для использования (например, claude-sonnet-4-20250514)
  • --mcp-config: Путь к конфигурации MCP
  • --allowed-tools: Список разрешенных инструментов через запятую
  • --debug: Включить отладочный вывод

Альтернативные методы интеграции

Хотя команда /install-github-app является рекомендуемым подходом, вы также можете:

  • Пользовательское GitHub App: Для организаций, нуждающихся в брендированных именах пользователей или пользовательских потоках аутентификации. Создайте ваше собственное GitHub App с необходимыми разрешениями (contents, issues, pull requests) и используйте action actions/create-github-app-token для генерации токенов в ваших рабочих процессах.
  • Ручные GitHub Actions: Прямая конфигурация рабочего процесса для максимальной гибкости
  • Конфигурация MCP: Динамическая загрузка серверов Model Context Protocol

Смотрите репозиторий Claude Code Action для подробной документации.

Настройка поведения Claude

Вы можете настроить поведение Claude двумя способами:

  1. CLAUDE.md: Определите стандарты кодирования, критерии обзора и правила, специфичные для проекта, в файле CLAUDE.md в корне вашего репозитория. Claude будет следовать этим рекомендациям при создании PR и ответе на запросы. Ознакомьтесь с нашей документацией по памяти для получения более подробной информации.
  2. Пользовательские промпты: Используйте параметр prompt в файле рабочего процесса для предоставления инструкций, специфичных для рабочего процесса. Это позволяет вам настроить поведение Claude для разных рабочих процессов или задач.

Claude будет следовать этим рекомендациям при создании PR и ответе на запросы.