@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
не работает или вы предпочитаете ручную настройку, пожалуйста, следуйте этим инструкциям по ручной настройке:
- Установите Claude GitHub приложение в ваш репозиторий: https://github.com/apps/claude
- Добавьте ANTHROPIC_API_KEY в секреты вашего репозитория (Узнайте, как использовать секреты в GitHub Actions)
- Скопируйте файл рабочего процесса из examples/claude.yml в
.github/workflows/
вашего репозитория
После завершения быстрой настройки или ручной настройки, протестируйте action, отметив
@claude
в комментарии issue или PR!Обновление с Beta
Claude Code GitHub Actions v1.0 вводит критические изменения, которые требуют обновления ваших файлов рабочих процессов для обновления до v1.0 с beta версии.
Основные изменения
Все пользователи beta должны внести эти изменения в свои файлы рабочих процессов для обновления:- Обновите версию action: Измените
@beta
на@v1
- Удалите конфигурацию режима: Удалите
mode: "tag"
илиmode: "agent"
(теперь автоматически определяется) - Обновите входные данные промпта: Замените
direct_prompt
наprompt
- Переместите опции CLI: Конвертируйте
max_turns
,model
,custom_instructions
и т.д. вclaude_args
Справочник критических изменений
Старый Beta вход | Новый 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 |
Пример до и после
Beta версия:Action теперь автоматически определяет, запускаться ли в интерактивном режиме (отвечает на упоминания
@claude
) или режиме автоматизации (запускается немедленно с промптом) на основе вашей конфигурации.Примеры использования
Claude Code GitHub Actions может помочь вам с различными задачами. Директория примеров содержит готовые к использованию рабочие процессы для разных сценариев.Базовый рабочий процесс
Использование slash команд
Пользовательская автоматизация с промптами
Общие случаи использования
В комментариях issue или PR:Лучшие практики
Конфигурация CLAUDE.md
Создайте файлCLAUDE.md
в корне вашего репозитория для определения рекомендаций по стилю кода, критериев обзора, правил, специфичных для проекта, и предпочтительных паттернов. Этот файл направляет понимание Claude стандартов вашего проекта.
Соображения безопасности
Никогда не коммитьте API ключи напрямую в ваш репозиторий!
- Добавьте ваш API ключ как секрет репозитория с именем
ANTHROPIC_API_KEY
- Ссылайтесь на него в рабочих процессах:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
- Ограничьте разрешения action только необходимыми
- Просматривайте предложения Claude перед слиянием
${{ secrets.ANTHROPIC_API_KEY }}
) вместо жесткого кодирования API ключей напрямую в ваших файлах рабочих процессов.
Оптимизация производительности
Используйте шаблоны issues для предоставления контекста, держите вашCLAUDE.md
кратким и сфокусированным, и настройте соответствующие таймауты для ваших рабочих процессов.
Затраты CI
При использовании Claude Code GitHub Actions, учитывайте связанные затраты: Затраты GitHub Actions:- Claude Code работает на раннерах, размещенных на GitHub, которые потребляют ваши минуты GitHub Actions
- Смотрите документацию по биллингу GitHub для подробного ценообразования и лимитов минут
- Каждое взаимодействие Claude потребляет API токены на основе длины промптов и ответов
- Использование токенов варьируется в зависимости от сложности задачи и размера кодовой базы
- Смотрите страницу ценообразования Claude для текущих тарифов токенов
- Используйте конкретные команды
@claude
для уменьшения ненужных API вызовов - Настройте соответствующий
--max-turns
вclaude_args
для предотвращения чрезмерных итераций - Установите таймауты на уровне рабочего процесса для избежания неконтролируемых заданий
- Рассмотрите использование контролей параллелизма GitHub для ограничения параллельных запусков
Примеры конфигурации
Claude Code Action v1 упрощает конфигурацию с унифицированными параметрами:- Унифицированный интерфейс промпта - Используйте
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:
- Проект 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 App (Рекомендуется для 3P провайдеров)
Для лучшего контроля и безопасности при использовании 3P провайдеров, таких как Vertex AI или Bedrock, мы рекомендуем создать ваше собственное GitHub App:Альтернатива для Anthropic 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
- Запишите ваш App ID со страницы настроек приложения
- Установите приложение в ваш репозиторий:
- Со страницы настроек вашего приложения нажмите “Install App” в левой боковой панели
- Выберите ваш аккаунт или организацию
- Выберите “Only select repositories” и выберите конкретный репозиторий
- Нажмите “Install”
- Добавьте приватный ключ как секрет в ваш репозиторий:
- Перейдите в Settings вашего репозитория → Secrets and variables → Actions
- Создайте новый секрет с именем
APP_PRIVATE_KEY
с содержимым файла.pem
- Добавьте App ID как секрет:
- Создайте новый секрет с именем
APP_ID
с ID вашего GitHub App
Это приложение будет использоваться с action actions/create-github-app-token для генерации токенов аутентификации в ваших рабочих процессах.
- Установите с: https://github.com/apps/claude
- Дополнительная конфигурация для аутентификации не нужна
2
Настройте аутентификацию облачного провайдера
Выберите вашего облачного провайдера и настройте безопасную аутентификацию:
AWS Bedrock
AWS Bedrock
Настройте AWS для разрешения GitHub Actions безопасно аутентифицироваться без хранения учетных данных.Смотрите документацию AWS для подробных инструкций по настройке OIDC.
Примечание по безопасности: Используйте конфигурации, специфичные для репозитория, и предоставляйте только минимально необходимые разрешения.Необходимая настройка:
-
Включите Amazon Bedrock:
- Запросите доступ к моделям Claude в Amazon Bedrock
- Для межрегиональных моделей запросите доступ во всех необходимых регионах
-
Настройте GitHub OIDC Identity Provider:
- URL провайдера:
https://token.actions.githubusercontent.com
- Аудитория:
sts.amazonaws.com
- URL провайдера:
-
Создайте IAM роль для GitHub Actions:
- Тип доверенной сущности: Web identity
- Провайдер идентичности:
token.actions.githubusercontent.com
- Разрешения: политика
AmazonBedrockFullAccess
- Настройте политику доверия для вашего конкретного репозитория
- AWS_ROLE_TO_ASSUME: ARN IAM роли, которую вы создали
OIDC более безопасен, чем использование статических AWS ключей доступа, потому что учетные данные временные и автоматически ротируются.
Google Vertex AI
Google Vertex AI
Настройте Google Cloud для разрешения GitHub Actions безопасно аутентифицироваться без хранения учетных данных.Для подробных инструкций по настройке обратитесь к документации Google Cloud Workload Identity Federation.
Примечание по безопасности: Используйте конфигурации, специфичные для репозитория, и предоставляйте только минимально необходимые разрешения.Необходимая настройка:
-
Включите API в вашем проекте Google Cloud:
- IAM Credentials API
- Security Token Service (STS) API
- Vertex AI API
-
Создайте ресурсы Workload Identity Federation:
- Создайте Workload Identity Pool
- Добавьте GitHub OIDC провайдера с:
- Издатель:
https://token.actions.githubusercontent.com
- Сопоставления атрибутов для репозитория и владельца
- Рекомендация по безопасности: Используйте условия атрибутов, специфичные для репозитория
- Издатель:
-
Создайте сервисный аккаунт:
- Предоставьте только роль
Vertex AI User
- Рекомендация по безопасности: Создайте выделенный сервисный аккаунт для каждого репозитория
- Предоставьте только роль
-
Настройте IAM привязки:
- Разрешите Workload Identity Pool олицетворять сервисный аккаунт
- Рекомендация по безопасности: Используйте наборы принципалов, специфичные для репозитория
- GCP_WORKLOAD_IDENTITY_PROVIDER: Полное имя ресурса провайдера
- GCP_SERVICE_ACCOUNT: Email адрес сервисного аккаунта
Workload Identity Federation исключает необходимость в загружаемых ключах сервисного аккаунта, улучшая безопасность.
3
Добавьте необходимые секреты
Добавьте следующие секреты в ваш репозиторий (Settings → Secrets and variables → Actions):
Для Anthropic API (Прямой):
-
Для аутентификации API:
ANTHROPIC_API_KEY
: Ваш Anthropic API ключ с console.anthropic.com
-
Для GitHub App (если используете собственное приложение):
APP_ID
: ID вашего GitHub AppAPP_PRIVATE_KEY
: Содержимое приватного ключа (.pem)
Для Google Cloud Vertex AI
-
Для аутентификации GCP:
GCP_WORKLOAD_IDENTITY_PROVIDER
GCP_SERVICE_ACCOUNT
-
Для GitHub App (если используете собственное приложение):
APP_ID
: ID вашего GitHub AppAPP_PRIVATE_KEY
: Содержимое приватного ключа (.pem)
Для AWS Bedrock
-
Для аутентификации AWS:
AWS_ROLE_TO_ASSUME
-
Для GitHub App (если используете собственное приложение):
APP_ID
: ID вашего GitHub AppAPP_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 (из настроек приложения) |
APP_PRIVATE_KEY | Приватный ключ, который вы сгенерировали для вашего GitHub App |
Формат ID модели для Bedrock включает префикс региона (например,
us.anthropic.claude...
) и суффикс версии.Рабочий процесс Google Vertex AI
Рабочий процесс Google Vertex AI
Предварительные требования:
- Vertex AI API включен в вашем проекте GCP
- Workload Identity Federation настроена для GitHub
- Сервисный аккаунт с разрешениями Vertex AI
Имя секрета | Описание |
---|---|
GCP_WORKLOAD_IDENTITY_PROVIDER | Имя ресурса провайдера workload identity |
GCP_SERVICE_ACCOUNT | Email сервисного аккаунта с доступом к Vertex AI |
APP_ID | ID вашего GitHub App (из настроек приложения) |
APP_PRIVATE_KEY | Приватный ключ, который вы сгенерировали для вашего GitHub App |
ID проекта автоматически извлекается из шага аутентификации Google Cloud, поэтому вам не нужно жестко кодировать его.
Устранение неполадок
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_args | CLI аргументы, передаваемые в Claude Code | Нет |
anthropic_api_key | Anthropic API ключ | Да** |
github_token | GitHub токен для доступа к API | Нет |
trigger_phrase | Пользовательская фраза триггера (по умолчанию: “@claude”) | Нет |
use_bedrock | Использовать AWS Bedrock вместо Anthropic API | Нет |
use_vertex | Использовать Google Vertex AI вместо Anthropic API | Нет |
**Обязателен для прямого Anthropic API, не для Bedrock/Vertex
Использование claude_args
Параметрclaude_args
принимает любые аргументы Claude Code CLI:
--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
Вы можете настроить поведение Claude двумя способами:- CLAUDE.md: Определите стандарты кодирования, критерии обзора и правила, специфичные для проекта, в файле
CLAUDE.md
в корне вашего репозитория. Claude будет следовать этим рекомендациям при создании PR и ответе на запросы. Ознакомьтесь с нашей документацией по памяти для получения более подробной информации. - Пользовательские промпты: Используйте параметр
prompt
в файле рабочего процесса для предоставления инструкций, специфичных для рабочего процесса. Это позволяет вам настроить поведение Claude для разных рабочих процессов или задач.