GitHub Actions
Интегрируйте Claude Code с вашими рабочими процессами GitHub для автоматического обзора кода, управления PR и сортировки задач.
Claude Code GitHub Actions привносит автоматизацию на базе ИИ в ваш рабочий процесс GitHub. С помощью простого упоминания @claude
в любом PR или задаче, Claude может анализировать ваш код, создавать запросы на включение изменений, реализовывать функции и исправлять ошибки - всё это соблюдая стандарты вашего проекта.
Claude Code GitHub Actions в настоящее время находится в бета-версии. Функции и возможности могут развиваться по мере того, как мы совершенствуем опыт использования.
Claude Code GitHub Actions построен на основе Claude Code SDK, который обеспечивает программную интеграцию Claude Code в ваши приложения. Вы можете использовать SDK для создания пользовательских рабочих процессов автоматизации помимо GitHub Actions.
Почему стоит использовать Claude Code GitHub Actions?
- Мгновенное создание PR: Опишите, что вам нужно, и Claude создаст полный PR со всеми необходимыми изменениями
- Автоматизированная реализация кода: Превращайте задачи в рабочий код с помощью одной команды
- Соблюдение ваших стандартов: Claude соблюдает ваши рекомендации
CLAUDE.md
и существующие шаблоны кода - Простая настройка: Начните работу за считанные минуты с помощью нашего установщика и API-ключа
- Безопасность по умолчанию: Ваш код остается на раннерах Github
Что может делать Claude?
Claude Code предоставляет мощные GitHub Actions, которые трансформируют вашу работу с кодом:
Claude Code Action
Этот GitHub Action позволяет запускать Claude Code в рамках ваших рабочих процессов GitHub Actions. Вы можете использовать его для создания любого пользовательского рабочего процесса на основе Claude Code.
Claude Code Action (Base)
Основа для создания пользовательских рабочих процессов GitHub с Claude. Эта расширяемая структура дает вам полный доступ к возможностям Claude для создания индивидуальной автоматизации.
Быстрый старт
Самый простой способ настроить это действие - через Claude Code в терминале. Просто откройте claude и запустите /install-github-app
.
Эта команда проведет вас через настройку приложения GitHub и необходимых секретов.
- Вы должны быть администратором репозитория, чтобы установить приложение GitHub и добавить секреты
- Этот метод быстрого старта доступен только для прямых пользователей API Anthropic. Если вы используете 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/
вашего репозитория
Протестируйте действие
После завершения быстрого старта или ручной настройки, протестируйте действие, отметив @claude
в комментарии к задаче или PR!
Примеры использования
Claude Code GitHub Actions может помочь вам с различными задачами. Для полных рабочих примеров см. директорию примеров.
Превращение задач в PR
Claude проанализирует задачу, напишет код и создаст PR для проверки.
Получение помощи в реализации
Claude проанализирует ваш код и предоставит конкретные рекомендации по реализации.
Быстрое исправление ошибок
Claude найдет ошибку, реализует исправление и создаст PR.
Лучшие практики
Конфигурация CLAUDE.md
Создайте файл CLAUDE.md
в корне вашего репозитория, чтобы определить руководства по стилю кода, критерии обзора, правила, специфичные для проекта, и предпочтительные шаблоны. Этот файл направляет понимание Claude стандартов вашего проекта.
Соображения безопасности
⚠️ ВАЖНО: Никогда не коммитьте API-ключи напрямую в ваш репозиторий!
Всегда используйте GitHub Secrets для API-ключей:
- Добавьте ваш API-ключ как секрет репозитория с именем
ANTHROPIC_API_KEY
- Ссылайтесь на него в рабочих процессах:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
- Ограничьте разрешения действий только необходимыми
- Просматривайте предложения Claude перед слиянием
Всегда используйте GitHub Secrets (например, ${{ secrets.ANTHROPIC_API_KEY }}
) вместо жесткого кодирования API-ключей непосредственно в файлах рабочего процесса.
Оптимизация производительности
Используйте шаблоны задач для предоставления контекста, делайте ваш CLAUDE.md
кратким и целенаправленным, и настраивайте соответствующие тайм-ауты для ваших рабочих процессов.
Затраты на CI
При использовании Claude Code GitHub Actions учитывайте связанные с этим затраты:
Затраты на GitHub Actions:
- Claude Code работает на хостинге GitHub, который потребляет ваши минуты GitHub Actions
- См. документацию по биллингу GitHub для подробного ценообразования и ограничений по минутам
Затраты на API:
- Каждое взаимодействие с Claude потребляет API-токены в зависимости от длины запросов и ответов
- Использование токенов варьируется в зависимости от сложности задачи и размера кодовой базы
- См. страницу с ценами Claude для текущих тарифов на токены
Советы по оптимизации затрат:
- Используйте конкретные команды
@claude
для уменьшения ненужных вызовов API - Настройте соответствующие ограничения
max_turns
, чтобы предотвратить чрезмерные итерации - Установите разумные
timeout_minutes
, чтобы избежать неконтролируемых рабочих процессов - Рассмотрите возможность использования элементов управления параллельным выполнением GitHub для ограничения параллельных запусков
Примеры конфигурации
Для готовых к использованию конфигураций рабочих процессов для различных случаев использования, включая:
- Базовая настройка рабочего процесса для комментариев к задачам и PR
- Автоматические обзоры кода для запросов на включение изменений
- Пользовательские реализации для конкретных потребностей
Посетите директорию примеров в репозитории Claude Code Action.
Репозиторий примеров включает полные, протестированные рабочие процессы, которые вы можете скопировать непосредственно в вашу директорию .github/workflows/
.
Использование с AWS Bedrock и Google Vertex AI
Для корпоративных сред вы можете использовать Claude Code GitHub Actions с вашей собственной облачной инфраструктурой. Этот подход дает вам контроль над размещением данных и биллингом, сохраняя ту же функциональность.
Предварительные требования
Перед настройкой Claude Code GitHub Actions с облачными провайдерами вам необходимо:
Для Google Cloud Vertex AI:
- Проект Google Cloud с включенным Vertex AI
- Настроенная федерация рабочих нагрузок для GitHub Actions
- Сервисный аккаунт с необходимыми разрешениями
- Приложение GitHub (рекомендуется) или использование стандартного GITHUB_TOKEN
Для AWS Bedrock:
- Аккаунт AWS с включенным Amazon Bedrock
- Настроенный поставщик идентификации GitHub OIDC в AWS
- Роль IAM с разрешениями Bedrock
- Приложение GitHub (рекомендуется) или использование стандартного GITHUB_TOKEN
Создайте пользовательское приложение GitHub (Рекомендуется для сторонних провайдеров)
Для лучшего контроля и безопасности при использовании сторонних провайдеров, таких как Vertex AI или Bedrock, мы рекомендуем создать собственное приложение GitHub:
- Перейдите на https://github.com/settings/apps/new
- Заполните основную информацию:
- Имя приложения GitHub: Выберите уникальное имя (например, “YourOrg Claude Assistant”)
- URL домашней страницы: Веб-сайт вашей организации или URL репозитория
- Настройте параметры приложения:
- Веб-хуки: Снимите флажок “Активно” (не требуется для этой интеграции)
- Установите необходимые разрешения:
- Разрешения репозитория:
- Содержимое: Чтение и запись
- Задачи: Чтение и запись
- Запросы на включение изменений: Чтение и запись
- Разрешения репозитория:
- Нажмите “Создать приложение GitHub”
- После создания нажмите “Сгенерировать приватный ключ” и сохраните загруженный файл
.pem
- Запишите ID вашего приложения со страницы настроек приложения
- Установите приложение в ваш репозиторий:
- На странице настроек вашего приложения нажмите “Установить приложение” в левой боковой панели
- Выберите ваш аккаунт или организацию
- Выберите “Только выбранные репозитории” и выберите конкретный репозиторий
- Нажмите “Установить”
- Добавьте приватный ключ как секрет в ваш репозиторий:
- Перейдите в Настройки репозитория → Секреты и переменные → Actions
- Создайте новый секрет с именем
APP_PRIVATE_KEY
с содержимым файла.pem
- Добавьте ID приложения как секрет:
- Создайте новый секрет с именем
APP_ID
с ID вашего приложения GitHub
Это приложение будет использоваться с действием actions/create-github-app-token для генерации токенов аутентификации в ваших рабочих процессах.
Альтернатива для API Anthropic или если вы не хотите настраивать собственное приложение Github: Используйте официальное приложение Anthropic:
- Установите с: https://github.com/apps/claude
- Дополнительная настройка для аутентификации не требуется
Настройте аутентификацию облачного провайдера
Выберите вашего облачного провайдера и настройте безопасную аутентификацию:
Добавьте необходимые секреты
Добавьте следующие секреты в ваш репозиторий (Настройки → Секреты и переменные → Actions):
Для API Anthropic (Прямой):
-
Для аутентификации API:
ANTHROPIC_API_KEY
: Ваш ключ API Anthropic из console.anthropic.com
-
Для приложения GitHub (если используете собственное приложение):
APP_ID
: ID вашего приложения GitHubAPP_PRIVATE_KEY
: Содержимое приватного ключа (.pem)
Для Google Cloud Vertex AI
-
Для аутентификации GCP:
GCP_WORKLOAD_IDENTITY_PROVIDER
GCP_SERVICE_ACCOUNT
-
Для приложения GitHub (если используете собственное приложение):
APP_ID
: ID вашего приложения GitHubAPP_PRIVATE_KEY
: Содержимое приватного ключа (.pem)
Для AWS Bedrock
-
Для аутентификации AWS:
AWS_ROLE_TO_ASSUME
-
Для приложения GitHub (если используете собственное приложение):
APP_ID
: ID вашего приложения GitHubAPP_PRIVATE_KEY
: Содержимое приватного ключа (.pem)
Создайте файлы рабочего процесса
Создайте файлы рабочего процесса GitHub Actions, которые интегрируются с вашим облачным провайдером. Примеры ниже показывают полные конфигурации как для AWS Bedrock, так и для Google Vertex AI:
Устранение неполадок
Claude не отвечает на команды @claude
Проверьте, правильно ли установлено приложение GitHub, убедитесь, что рабочие процессы включены, убедитесь, что API-ключ установлен в секретах репозитория, и подтвердите, что комментарий содержит @claude
(а не /claude
).
CI не запускается при коммитах Claude
Убедитесь, что вы используете приложение GitHub или пользовательское приложение (не пользователя Actions), проверьте, включают ли триггеры рабочего процесса необходимые события, и проверьте, включают ли разрешения приложения триггеры CI.
Ошибки аутентификации
Подтвердите, что API-ключ действителен и имеет достаточные разрешения. Для Bedrock/Vertex проверьте конфигурацию учетных данных и убедитесь, что секреты правильно названы в рабочих процессах.
Расширенная конфигурация
Параметры действия
Claude Code Action поддерживает следующие ключевые параметры:
Параметр | Описание | Обязательный |
---|---|---|
prompt | Запрос для отправки Claude | Да* |
prompt_file | Путь к файлу, содержащему запрос | Да* |
anthropic_api_key | Ключ API Anthropic | Да** |
max_turns | Максимальное количество ходов разговора | Нет |
timeout_minutes | Тайм-аут выполнения | Нет |
*Требуется либо prompt
, либо prompt_file
**Требуется для прямого API Anthropic, не для Bedrock/Vertex
Альтернативные методы интеграции
Хотя команда /install-github-app
является рекомендуемым подходом, вы также можете:
- Пользовательское приложение GitHub: Для организаций, нуждающихся в брендированных именах пользователей или пользовательских потоках аутентификации. Создайте собственное приложение GitHub с необходимыми разрешениями (содержимое, задачи, запросы на включение изменений) и используйте действие actions/create-github-app-token для генерации токенов в ваших рабочих процессах.
- Ручные GitHub Actions: Прямая конфигурация рабочего процесса для максимальной гибкости
- Конфигурация MCP: Динамическая загрузка серверов протокола контекста модели
См. репозиторий Claude Code Action для подробной документации.
Настройка поведения Claude
Вы можете настроить поведение Claude двумя способами:
- CLAUDE.md: Определите стандарты кодирования, критерии обзора и правила, специфичные для проекта, в файле
CLAUDE.md
в корне вашего репозитория. Claude будет следовать этим рекомендациям при создании PR и ответах на запросы. Ознакомьтесь с нашей документацией по памяти для получения дополнительной информации. - Пользовательские запросы: Используйте параметр
prompt
в файле рабочего процесса для предоставления инструкций, специфичных для рабочего процесса. Это позволяет настраивать поведение Claude для различных рабочих процессов или задач.
Claude будет следовать этим рекомендациям при создании PR и ответах на запросы.