8 мин · +150 баллов
Claude в GitHub Actions
Упомяни @claude в issue или pull request, и работа будет сделана в твоём репозитории.
К концу этого урока
Ты сможешь подключить репозиторий на GitHub к Claude Code, вызывать его через @claude и держать запуски безопасными и недорогими.
Claude Code GitHub Action запускает Claude Code внутри workflow твоего репозитория на GitHub. Кто-то пишет @claude в issue или комментарии к pull request, и Claude читает код, вносит изменение и отправляет коммиты или отвечает в обсуждении. Он может запускаться и сам: по расписанию или при открытии pull request.
Быстрая настройка
Со своего компьютера
- 1Попроси Claude: «установи GitHub CLI и помоги войти в GitHub». Нужны права администратора репозитория.
- 2Открой папку репозитория в терминале и запусти claude.
- 3Набери /install-github-app и следуй подсказкам. Работает только с репозиториями на github.com.
- 4Claude Code поставит Claude GitHub App и сохранит секрет репозитория: твой API-ключ или долгоживущий токен от подписки Claude.
- 5Он отправит ветку с файлами workflow и откроет в браузере pull request. Создай и слей его.
- 6Проверь: в issue напиши @claude fix the TypeError in the user dashboard component.
«Настрой в этом репозитории GitHub Action, который отвечает на упоминания @claude в issue и pull request, на anthropics/claude-code-action@v1. Напиши файл workflow, скажи, какой секрет добавить на GitHub и где, никогда не клади ключ в файлы и открой pull request с этим изменением.»
Подходит, когда хочешь сначала прочитать каждую строку или поменять уже существующий workflow. Claude скажет, какие шаги требуют тебя в браузере, например установка Claude GitHub App и добавление секрета.
Файл workflow
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
claude:
if: contains(github.event.comment.body, '@claude')
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 1
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}Что в нём важно
- 1on: события, которые его запускают; здесь новые комментарии к issue и к ревью pull request.
- 2if: пропускает задание, если в комментарии нет @claude, чтобы раннер не запускался зря.
- 3permissions: что заданию можно делать в репозитории. id-token: write нужен для входа action через GitHub App; actions: read позволяет Claude читать результаты CI.
- 4Без входа prompt action ждёт @claude (интерактивный режим). С prompt он работает без упоминания (режим автоматизации).
- 5С токеном подписки замени последнюю строку на claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}.
Никогда не коммить API-ключ или токен. Храни его как секрет GitHub и ссылайся на него, как в примере. В issue и pull request запустить action могут только пользователи с правом записи, а боты отклоняются, если их нет в allowed_bots. Давай workflow только нужные права и проверяй изменения Claude перед слиянием.
Расходы и ограничения
Держим запуски небольшими
- 1Каждый запуск тратит минуты GitHub Actions и токены: оплата по API с ключом, лимиты подписки с токеном OAuth.
- 2Пиши конкретные просьбы к @claude, тогда нужно меньше ходов.
- 3Добавь --max-turns в claude_args и задай тайм-аут заданию.
- 4Держи CLAUDE.md коротким: Claude читает его при каждом запуске.
- 5Ограничь параллельные запуски средствами GitHub для concurrency.
/code-review в твоей сессии Claude Code проверяет текущие изменения или pull request по номеру, на любом тарифе. Code Review — управляемый сервис для тарифов Team и Enterprise: он проверяет каждый pull request на GitHub и оставляет комментарии к строкам; включает его владелец организации. Для GitLab есть интеграция Claude Code GitLab CI/CD; она в бете, и поддерживает её GitLab.
claude setup-token создаёт токен подписки. Он умеет только запросы к модели и привязан к подписке того, кто его создал, поэтому для секрета на всю организацию документация советует API-ключ из Console или workload identity federation через GitHub OIDC без хранимого секрета. Вход prompt принимает скилл: /имя-скилла из .claude/skills/ после actions/checkout или скилл плагина, поставленного через входы plugin_marketplaces и plugins. С обычным текстом в prompt в режиме автоматизации у Claude нет shell и инструментов GitHub API, пока ты не разрешишь их через --allowedTools в claude_args. Чтобы обновить старый сгенерированный workflow, снова запусти /install-github-app и выбери Update workflow file with latest version.
У workflow есть вход prompt, и он запускается на каждый новый pull request. Нужно ли кому-то писать @claude?
Где должен храниться CLAUDE_CODE_OAUTH_TOKEN?
Факты проверены по официальной документации Claude Code 24 октября 2026 г. · источник

Автор
Евгений Арсентьев
PhD · CEO, digital health