@claude в любом PR или issue, Claude может анализировать ваш код, создавать pull requests, реализовывать функции и исправлять ошибки — всё при соблюдении стандартов вашего проекта.
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. Просмотреть репозиторий →Настройка
Быстрая настройка
Самый простой способ настроить это действие — через Claude Code в терминале. Просто откройте claude и запустите/install-github-app.
Эта команда проведёт вас через настройку GitHub приложения и необходимых секретов.
- Вы должны быть администратором репозитория для установки GitHub приложения и добавления секретов
- GitHub приложение будет запрашивать права на чтение и запись для Contents, Issues и Pull requests
- Этот метод быстрого старта доступен только для прямых пользователей Claude API. Если вы используете AWS Bedrock или Google Vertex AI, пожалуйста, см. раздел Использование с AWS Bedrock и Google Vertex AI.
Ручная настройка
Если команда/install-github-app не сработала или вы предпочитаете ручную настройку, пожалуйста, следуйте этим инструкциям ручной настройки:
-
Установите Claude GitHub приложение в ваш репозиторий: https://github.com/apps/claude
Claude GitHub приложение требует следующих прав доступа к репозиторию:
- Contents: Чтение и запись (для изменения файлов репозитория)
- Issues: Чтение и запись (для ответа на issues)
- Pull requests: Чтение и запись (для создания PR и отправки изменений)
- Добавьте ANTHROPIC_API_KEY в секреты вашего репозитория (Узнайте, как использовать секреты в GitHub Actions)
-
Скопируйте файл рабочего процесса из examples/claude.yml в папку
.github/workflows/вашего репозитория
Обновление с бета-версии
Если вы в настоящее время используете бета-версию Claude Code GitHub Actions, мы рекомендуем обновить ваши рабочие процессы для использования версии GA. Новая версия упрощает конфигурацию, добавляя мощные новые функции, такие как автоматическое определение режима.Существенные изменения
Все пользователи бета-версии должны внести эти изменения в свои файлы рабочего процесса для обновления:- Обновите версию действия: Измените
@betaна@v1 - Удалите конфигурацию режима: Удалите
mode: "tag"илиmode: "agent"(теперь автоматически определяется) - Обновите входные данные prompt: Замените
direct_promptнаprompt - Переместите параметры CLI: Преобразуйте
max_turns,model,custom_instructionsи т.д. вclaude_args
Справочник критических изменений
| Старый вход бета-версии | Новый вход v1.0 |
|---|---|
mode | (Удалено - автоматически определяется) |
direct_prompt | prompt |
override_prompt | prompt с переменными GitHub |
custom_instructions | claude_args: --system-prompt |
max_turns | claude_args: --max-turns |
model | claude_args: --model |
allowed_tools | claude_args: --allowedTools |
disallowed_tools | claude_args: --disallowedTools |
claude_env | settings формат JSON |
Пример до и после
Бета-версия:Примеры использования
Claude Code GitHub Actions может помочь вам с различными задачами. Директория примеров содержит готовые к использованию рабочие процессы для различных сценариев.Базовый рабочий процесс
Использование slash команд
Пользовательская автоматизация с prompts
Распространённые случаи использования
В комментариях issue или PR:Лучшие практики
Конфигурация CLAUDE.md
Создайте файлCLAUDE.md в корне вашего репозитория для определения рекомендаций по стилю кода, критериев проверки, правил, специфичных для проекта, и предпочитаемых паттернов. Этот файл направляет понимание Claude стандартов вашего проекта.
Соображения безопасности
Для получения полного руководства по безопасности, включая права доступа, аутентификацию и лучшие практики, см. документацию по безопасности Claude Code Action. Всегда используйте GitHub Secrets для API ключей:- Добавьте ваш API ключ как секрет репозитория с именем
ANTHROPIC_API_KEY - Ссылайтесь на него в рабочих процессах:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} - Ограничьте права доступа действия только необходимыми
- Проверьте предложения Claude перед слиянием
${{ secrets.ANTHROPIC_API_KEY }}), а не жёсткое кодирование API ключей непосредственно в ваши файлы рабочего процесса.
Оптимизация производительности
Используйте шаблоны issues для предоставления контекста, держите вашCLAUDE.md кратким и сосредоточенным, и настройте соответствующие тайм-ауты для ваших рабочих процессов.
Затраты CI
При использовании Claude Code GitHub Actions имейте в виду связанные затраты: Затраты GitHub Actions:- Claude Code работает на GitHub-размещённых runners, которые потребляют ваши минуты GitHub Actions
- См. документацию по выставлению счётов GitHub для получения подробной информации о ценах и лимитах минут
- Каждое взаимодействие Claude потребляет токены API на основе длины prompts и ответов
- Использование токенов варьируется в зависимости от сложности задачи и размера кодовой базы
- См. страницу ценообразования Claude для получения текущих ставок токенов
- Используйте специфичные команды
@claudeдля уменьшения ненужных вызовов API - Настройте соответствующий
--max-turnsвclaude_argsдля предотвращения чрезмерных итераций - Установите тайм-ауты на уровне рабочего процесса для избежания неконтролируемых заданий
- Рассмотрите использование элементов управления параллелизмом GitHub для ограничения параллельных запусков
Примеры конфигурации
Claude Code Action v1 упрощает конфигурацию с унифицированными параметрами:- Унифицированный интерфейс prompt - Используйте
promptдля всех инструкций - Slash команды - Встроенные prompts, такие как
/reviewили/fix - Passthrough CLI - Любой аргумент Claude Code CLI через
claude_args - Гибкие триггеры - Работает с любым событием GitHub
Использование с AWS Bedrock и Google Vertex AI
Для корпоративных сред вы можете использовать Claude Code GitHub Actions с вашей собственной облачной инфраструктурой. Этот подход даёт вам контроль над местоположением данных и выставлением счётов при сохранении той же функциональности.Предварительные требования
Перед настройкой Claude Code GitHub Actions с облачными провайдерами вам нужно:Для Google Cloud Vertex AI:
- Проект Google Cloud с включённым Vertex AI
- Workload Identity Federation, настроенная для GitHub Actions
- Сервисный аккаунт с необходимыми правами доступа
- GitHub App (рекомендуется) или использование стандартного GITHUB_TOKEN
Для AWS Bedrock:
- Аккаунт AWS с включённым Amazon Bedrock
- GitHub OIDC Identity Provider, настроенный в AWS
- IAM роль с правами доступа Bedrock
- GitHub App (рекомендуется) или использование стандартного GITHUB_TOKEN
1
Создайте пользовательское GitHub приложение (Рекомендуется для 3P провайдеров)
Для лучшего контроля и безопасности при использовании 3P провайдеров, таких как Vertex AI или Bedrock, мы рекомендуем создать ваше собственное GitHub приложение:Альтернатива для Claude API или если вы не хотите настраивать своё Github приложение: Используйте официальное приложение Anthropic:
- Перейдите на https://github.com/settings/apps/new
- Заполните основную информацию:
- GitHub App name: Выберите уникальное имя (например, “YourOrg Claude Assistant”)
- Homepage URL: Веб-сайт вашей организации или URL репозитория
- Настройте параметры приложения:
- Webhooks: Снимите флажок “Active” (не требуется для этой интеграции)
- Установите необходимые права доступа:
- Repository permissions:
- Contents: Read & Write
- Issues: Read & Write
- Pull requests: Read & Write
- Repository permissions:
- Нажмите “Create GitHub App”
- После создания нажмите “Generate a private key” и сохраните загруженный файл
.pem - Запишите ID вашего приложения со страницы параметров приложения
- Установите приложение в ваш репозиторий:
- Со страницы параметров вашего приложения нажмите “Install App” в левой боковой панели
- Выберите ваш аккаунт или организацию
- Выберите “Only select repositories” и выберите конкретный репозиторий
- Нажмите “Install”
- Добавьте приватный ключ как секрет в ваш репозиторий:
- Перейдите в Settings вашего репозитория → Secrets and variables → Actions
- Создайте новый секрет с именем
APP_PRIVATE_KEYс содержимым файла.pem
- Добавьте ID приложения как секрет:
- Создайте новый секрет с именем
APP_IDс ID вашего GitHub приложения
Это приложение будет использоваться с действием actions/create-github-app-token для генерации токенов аутентификации в ваших рабочих процессах.
- Установите с: https://github.com/apps/claude
- Дополнительная конфигурация не требуется для аутентификации
2
Настройте аутентификацию облачного провайдера
Выберите вашего облачного провайдера и установите безопасную аутентификацию:
AWS Bedrock
AWS Bedrock
Настройте AWS для разрешения GitHub Actions аутентифицироваться безопасно без хранения учётных данных.
Примечание по безопасности: Используйте конфигурации, специфичные для репозитория, и предоставляйте только минимально необходимые права доступа.Требуемая настройка:
-
Включите Amazon Bedrock:
- Запросите доступ к моделям Claude в Amazon Bedrock
- Для моделей в разных регионах запросите доступ во всех необходимых регионах
-
Установите GitHub OIDC Identity Provider:
- Provider URL:
https://token.actions.githubusercontent.com - Audience:
sts.amazonaws.com
- Provider URL:
-
Создайте IAM роль для GitHub Actions:
- Trusted entity type: Web identity
- Identity provider:
token.actions.githubusercontent.com - Permissions: политика
AmazonBedrockFullAccess - Настройте политику доверия для вашего конкретного репозитория
- AWS_ROLE_TO_ASSUME: ARN IAM роли, которую вы создали
Google Vertex AI
Google Vertex AI
Настройте Google Cloud для разрешения GitHub Actions аутентифицироваться безопасно без хранения учётных данных.
Примечание по безопасности: Используйте конфигурации, специфичные для репозитория, и предоставляйте только минимально необходимые права доступа.Требуемая настройка:
-
Включите API в вашем проекте Google Cloud:
- IAM Credentials API
- Security Token Service (STS) API
- Vertex AI API
-
Создайте ресурсы Workload Identity Federation:
- Создайте Workload Identity Pool
- Добавьте GitHub OIDC провайдера с:
- Issuer:
https://token.actions.githubusercontent.com - Отображение атрибутов для репозитория и владельца
- Рекомендация по безопасности: Используйте условия атрибутов, специфичные для репозитория
- Issuer:
-
Создайте сервисный аккаунт:
- Предоставьте только роль
Vertex AI User - Рекомендация по безопасности: Создайте выделенный сервисный аккаунт для каждого репозитория
- Предоставьте только роль
-
Настройте привязки IAM:
- Разрешите Workload Identity Pool олицетворять сервисный аккаунт
- Рекомендация по безопасности: Используйте наборы принципалов, специфичные для репозитория
- GCP_WORKLOAD_IDENTITY_PROVIDER: Полное имя ресурса провайдера
- GCP_SERVICE_ACCOUNT: Адрес электронной почты сервисного аккаунта
3
Добавьте необходимые секреты
Добавьте следующие секреты в ваш репозиторий (Settings → Secrets and variables → Actions):
Для Claude API (прямой):
-
Для аутентификации API:
ANTHROPIC_API_KEY: Ваш Claude API ключ с console.anthropic.com
-
Для GitHub App (если используете своё приложение):
APP_ID: ID вашего GitHub приложенияAPP_PRIVATE_KEY: Содержимое приватного ключа (.pem)
Для Google Cloud Vertex AI
-
Для аутентификации GCP:
GCP_WORKLOAD_IDENTITY_PROVIDERGCP_SERVICE_ACCOUNT
-
Для GitHub App (если используете своё приложение):
APP_ID: ID вашего GitHub приложенияAPP_PRIVATE_KEY: Содержимое приватного ключа (.pem)
Для AWS Bedrock
-
Для аутентификации AWS:
AWS_ROLE_TO_ASSUME
-
Для GitHub App (если используете своё приложение):
APP_ID: ID вашего GitHub приложенияAPP_PRIVATE_KEY: Содержимое приватного ключа (.pem)
4
Создайте файлы рабочего процесса
Создайте файлы рабочего процесса GitHub Actions, которые интегрируются с вашим облачным провайдером. Примеры ниже показывают полные конфигурации как для AWS Bedrock, так и для Google Vertex AI:
AWS Bedrock рабочий процесс
AWS Bedrock рабочий процесс
Предварительные требования:
- Доступ AWS Bedrock включён с правами доступа к модели Claude
- GitHub настроен как OIDC поставщик идентификации в AWS
- IAM роль с правами доступа Bedrock, которая доверяет GitHub Actions
| Имя секрета | Описание |
|---|---|
AWS_ROLE_TO_ASSUME | ARN IAM роли для доступа к Bedrock |
APP_ID | ID вашего GitHub приложения (из параметров приложения) |
APP_PRIVATE_KEY | Приватный ключ, который вы создали для вашего GitHub приложения |
Google Vertex AI рабочий процесс
Google Vertex AI рабочий процесс
Предварительные требования:
- Vertex AI API включён в вашем проекте GCP
- Workload Identity Federation настроена для GitHub
- Сервисный аккаунт с правами доступа Vertex AI
| Имя секрета | Описание |
|---|---|
GCP_WORKLOAD_IDENTITY_PROVIDER | Имя ресурса поставщика рабочей идентификации |
GCP_SERVICE_ACCOUNT | Адрес электронной почты сервисного аккаунта с доступом к Vertex AI |
APP_ID | ID вашего GitHub приложения (из параметров приложения) |
APP_PRIVATE_KEY | Приватный ключ, который вы создали для вашего GitHub приложения |
Устранение неполадок
Claude не отвечает на команды @claude
Проверьте, что GitHub приложение установлено правильно, убедитесь, что рабочие процессы включены, убедитесь, что API ключ установлен в секретах репозитория, и подтвердите, что комментарий содержит@claude (не /claude).
CI не запускается на коммитах Claude
Убедитесь, что вы используете GitHub приложение или пользовательское приложение (не пользователя Actions), проверьте, что триггеры рабочего процесса включают необходимые события, и проверьте, что права доступа приложения включают триггеры CI.Ошибки аутентификации
Подтвердите, что API ключ действителен и имеет достаточные права доступа. Для Bedrock/Vertex проверьте конфигурацию учётных данных и убедитесь, что секреты правильно названы в рабочих процессах.Расширенная конфигурация
Параметры действия
Claude Code Action v1 использует упрощённую конфигурацию:| Параметр | Описание | Требуется |
|---|---|---|
prompt | Инструкции для Claude (текст или slash команда) | Нет* |
claude_args | Аргументы CLI, передаваемые Claude Code | Нет |
anthropic_api_key | Claude API ключ | Да** |
github_token | GitHub токен для доступа к API | Нет |
trigger_phrase | Пользовательская фраза триггера (по умолчанию: “@claude”) | Нет |
use_bedrock | Использовать AWS Bedrock вместо Claude API | Нет |
use_vertex | Использовать Google Vertex AI вместо Claude API | Нет |
**Требуется для прямого Claude API, не требуется для Bedrock/Vertex
Использование claude_args
Параметрclaude_args принимает любые аргументы Claude Code CLI:
--max-turns: Максимальное количество ходов разговора (по умолчанию: 10)--model: Модель для использования (например,claude-sonnet-4-5-20250929)--mcp-config: Путь к конфигурации MCP--allowed-tools: Список разрешённых инструментов, разделённый запятыми--debug: Включить вывод отладки
Альтернативные методы интеграции
Хотя команда/install-github-app является рекомендуемым подходом, вы также можете:
- Пользовательское GitHub приложение: Для организаций, нуждающихся в фирменных именах пользователей или пользовательских потоках аутентификации. Создайте своё собственное GitHub приложение с необходимыми правами доступа (contents, issues, pull requests) и используйте действие actions/create-github-app-token для генерации токенов в ваших рабочих процессах.
- Ручные GitHub Actions: Прямая конфигурация рабочего процесса для максимальной гибкости
- Конфигурация MCP: Динамическая загрузка серверов Model Context Protocol
Настройка поведения Claude
Вы можете настроить поведение Claude двумя способами:- CLAUDE.md: Определите стандарты кодирования, критерии проверки и правила, специфичные для проекта, в файле
CLAUDE.mdв корне вашего репозитория. Claude будет следовать этим рекомендациям при создании PR и ответе на запросы. Ознакомьтесь с нашей документацией по памяти для получения дополнительной информации. - Пользовательские prompts: Используйте параметр
promptв файле рабочего процесса для предоставления инструкций, специфичных для рабочего процесса. Это позволяет вам настроить поведение Claude для различных рабочих процессов или задач.