Skip to main content
Claude Code GitHub Actions по умолчанию вызывает Claude API. Чтобы маршрутизировать вывод через собственный облачный аккаунт, установите входной параметр провайдера Claude Code GitHub Action и настройте облако на доверие токену OpenID Connect (OIDC) рабочего процесса. Рабочий процесс аутентифицируется с помощью этого токена, поэтому вы не сохраняете долгоживущие облачные учетные данные в своем репозитории.
Эта страница основана на настройке GitHub Actions. Предполагается, что вы уже знакомы с файлом рабочего процесса и шагом anthropics/claude-code-action, и здесь рассматривается только то, что меняется для облачного провайдера.

Выберите своего провайдера

Claude Code GitHub Action поддерживает трех провайдеров, и шаги настройки ниже отличаются только конфигурацией на стороне облака. Используйте того, у которого ваша организация уже имеет доступ к моделям Claude. Вы указываете Claude Code GitHub Action, какого провайдера использовать, с помощью одного входного параметра в блоке with: шага anthropics/claude-code-action:
  • Amazon Bedrock: use_bedrock: "true"
  • Google Cloud’s Agent Platform: use_vertex: "true"
  • Microsoft Foundry: use_foundry: "true"
Полные примеры рабочих процессов в разделе Настройка интеграции уже включают входной параметр для каждого провайдера.

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

Перед началом вам потребуется:
  • Доступ администратора к репозиторию, где работает Claude Code GitHub Action, для установки GitHub App и добавления секретов
  • Разрешение на создание ресурсов идентификации в вашем облачном аккаунте: роли IAM и поставщики идентификации OIDC на AWS, ресурсы Workload Identity Federation и сервисные аккаунты на Google Cloud, или приложения Microsoft Entra на Azure
  • Доступ к моделям Claude на вашем провайдере:
    • Amazon Bedrock: доступ предоставлен моделям Claude. Профили кросс-региональной инференции, такие как идентификаторы моделей us. в примерах на этой странице, требуют доступа, предоставленного в каждом регионе их группы регионов. См. Claude Code на Amazon Bedrock
    • Google Cloud’s Agent Platform: проект с включенным Agent Platform API и доступом к моделям Claude. См. Claude Code на Google Cloud’s Agent Platform
    • Microsoft Foundry: ресурс Foundry с развертыванием модели Claude. См. Claude Code на Microsoft Foundry

Настройка интеграции

Помимо предварительных требований, вы создаете четыре вещи: идентификацию GitHub для Claude Code GitHub Action, конфигурацию доверия на стороне облака, секреты репозитория и файл рабочего процесса. Шаги ниже проходят через каждый из них.
1

Выберите идентификацию GitHub

Claude Code GitHub Action отправляет коммиты и публикует комментарии через идентификацию GitHub. Быстрая настройка устанавливает официальное приложение Claude GitHub App для этого. С облачным провайдером вы выбираете идентификацию сами:
  • Официальное приложение Claude GitHub App: установите его на репозиторий, или пропустите на следующий шаг, если оно уже установлено
  • Пользовательское приложение GitHub: создайте свое собственное приложение, описанное ниже, когда вам нужны только три разрешения, которые использует Claude Code GitHub Action, а не полный набор официального приложения
  • Автоматический GITHUB_TOKEN GitHub: нет приложения для создания или установки, но GitHub не запускает ваши CI рабочие процессы на коммитах, сделанных с его помощью
Примеры рабочих процессов на четвертом шаге аутентифицируются с помощью пользовательского приложения. Этот шаг также указывает, что изменить для двух других вариантов.Чтобы создать пользовательское приложение, зарегистрируйте новое приложение GitHub с отключенными вебхуками, так как эта интеграция их не использует. Предоставьте ему три разрешения репозитория:
  • Contents: чтение и запись
  • Issues: чтение и запись
  • Pull requests: чтение и запись
После регистрации приложения создайте приватный ключ и сохраните загруженный файл .pem, запишите ID приложения со страницы настроек приложения и установите приложение на репозиторий, где работает Claude Code GitHub Action. Вы добавляете ключ и ID как секреты на третьем шаге.
2

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

Настройте облако на доверие токену OIDC, который GitHub выдает рабочему процессу, чтобы каждый запуск рабочего процесса получал краткосрочные облачные учетные данные. Маркеры в каждой вкладке суммируют то, что нужно создать, и каждая вкладка ссылается на собственное руководство облачного провайдера для шагов на уровне консоли.
Создайте конфигурацию доверия в вашем аккаунте AWS, следуя руководству AWS по созданию поставщиков идентификации OIDC:
  • Добавьте поставщика идентификации GitHub OIDC с URL провайдера https://token.actions.githubusercontent.com и аудиторией sts.amazonaws.com
  • Создайте роль IAM, которой доверяет этот провайдер как веб-идентификация, и присоедините политику ограниченного вызова из конфигурации IAM, которая предоставляет bedrock:InvokeModel, bedrock:InvokeModelWithResponseStream, bedrock:ListInferenceProfiles и bedrock:GetInferenceProfile, а также два действия подписки aws-marketplace
  • Ограничьте политику доверия роли вашим репозиторием с условием субъекта, таким как repo:your-org/your-repo:*. См. руководство GitHub по усилению безопасности OIDC для формата утверждения
Запишите ARN роли. Вы добавляете его как секрет на следующем шаге.
3

Добавьте секреты репозитория

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

Создайте файл рабочего процесса

Создайте файл рабочего процесса для вашего провайдера, такой как .github/workflows/claude.yml. Каждый пример отвечает на упоминания @claude, аутентифицируется на GitHub с помощью пользовательского приложения и включает разрешение id-token: write, которое GitHub требует для выдачи токена OIDC, который ваш облачный провайдер обменивает на учетные данные.Если вы выбрали другую идентификацию GitHub на первом шаге, отрегулируйте пример:
  • Официальное приложение Claude GitHub App: удалите шаг Generate GitHub App token и строку github_token
  • Автоматический токен GitHub: удалите шаг генерации токена и измените строку github_token на github_token: ${{ secrets.GITHUB_TOKEN }}
В публичных репозиториях комментарий, содержащий фразу триггера от любого пользователя, запускает этот рабочий процесс. Шаги учетных данных выполняются до того, как Claude Code GitHub Action проверит доступ на запись комментатора, поэтому действие отклоняет неавторизованных пользователей только после того, как рабочий процесс создал токен приложения и вошел в ваш облачный провайдер, что оставляет записи в журнале аудита и потребляет минуты Actions. Чтобы избежать таких запусков, добавьте шаг, который проверяет доступ на запись комментатора перед шагами учетных данных.
Замените значение aws-region на свое собственное. Шаг учетных данных экспортирует его как AWS_REGION для остальной части задания.
Идентификаторы моделей Bedrock включают префикс профиля кросс-региональной инференции, такой как us.. Используйте префикс для группы регионов, где вы предоставили доступ к модели.
С любым провайдером вы можете ограничить длину запуска и стоимость, добавив --max-turns к claude_args. См. Управление затратами.
5

Протестируйте настройку

Упомяните @claude в комментарии проблемы или PR, затем смотрите запуск на вкладке Actions репозитория. Claude отвечает в комментарии на той же проблеме или PR.

Troubleshooting

Неудачный запуск обычно разбивается в одном из двух мест:
  • Ошибки аутентификации: обычно неправильная конфигурация OIDC. Проверьте, что рабочий процесс включает разрешение id-token: write, что условие репозитория конфигурации доверия точно соответствует вашему репозиторию и что имена секретов в вашем рабочем процессе совпадают с добавленными вами
  • Проблемы триггера и CI: они ведут себя так же, как когда Claude Code GitHub Action вызывает Claude API. См. раздел troubleshooting главной страницы и FAQ Claude Code GitHub Action

Что дальше