Integracja z GitHub Actions
Twój zespół przegląda 30 PR-ów tygodniowo. Każdy przegląd zajmuje 20-40 minut czasu starszego dewelopera. Połowa komentarzy to te same wzorce: brakująca obsługa błędów, niespójne nazewnictwo, testy, które nie pokrywają przypadków brzegowych. Claude Code GitHub Actions automatyzuje te powtarzalne przeglądy, uwalniając starszych deweloperów do przeglądów, które naprawdę wymagają ludzkiej oceny.
Co wyniesiesz z tego artykułu
Dział zatytułowany „Co wyniesiesz z tego artykułu”- Działający workflow GitHub Actions do automatycznego przeglądu kodu przy każdym PR-ze
- Obsługę wzmianek
@claudedo pomocy na żądanie w issues i PR-ach - Niestandardowe workflow automatyzacji do planowanych zadań i operacji sterowanych zdarzeniami
- Strategie optymalizacji kosztów dla użycia CI/CD
- Konfiguracje Bedrock i Vertex AI dla środowisk korporacyjnych
Szybka konfiguracja
Dział zatytułowany „Szybka konfiguracja”Najszybsza ścieżka to uruchomienie /install-github-app wewnątrz Claude Code. Przeprowadzi cię przez instalację aplikacji GitHub i konfigurację sekretów.
Dla ręcznej konfiguracji:
-
Zainstaluj aplikację Claude na GitHub z github.com/apps/claude
-
Dodaj klucz API jako sekret repozytorium o nazwie
ANTHROPIC_API_KEY -
Utwórz plik workflow w
.github/workflows/claude.yml:name: Claude Codeon:issue_comment:types: [created]pull_request_review_comment:types: [created]issues:types: [opened]pull_request:types: [opened, synchronize]jobs:claude:runs-on: ubuntu-lateststeps:- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
Po konfiguracji przetestuj tagując @claude w dowolnym komentarzu do issue lub PR-a.
Automatyczny przegląd kodu przy każdym PR-ze
Dział zatytułowany „Automatyczny przegląd kodu przy każdym PR-ze”Ten workflow uruchamia przegląd, gdy PR-y są otwierane lub aktualizowane:
name: Code Reviewon: pull_request: types: [opened, synchronize]
jobs: review: runs-on: ubuntu-latest steps: - uses: anthropics/claude-code-action@v1 with: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} prompt: | Review this PR for: 1. Correctness: logic errors, race conditions, null pointer risks 2. Security: injection vulnerabilities, auth bypasses, data exposure 3. Performance: N+1 queries, unnecessary iterations, missing indexes 4. Testing: adequate coverage, edge cases, mocking strategy
Be specific. Reference exact files and line numbers. Rate each finding as CRITICAL, HIGH, MEDIUM, or LOW. claude_args: "--max-turns 10 --model sonnet"Pomoc na żądanie z @claude
Dział zatytułowany „Pomoc na żądanie z @claude”Podstawowy workflow reaguje na wzmianki @claude w issues i komentarzach do PR-ów:
@claude implement the feature described in this issue@claude fix the TypeError in the dashboard component@claude how should I approach refactoring the auth middleware?Claude analizuje kontekst (opis issue, diff PR-a, historię konwersacji) i odpowiada kodem, wyjaśnieniami lub bezpośrednimi zmianami.
Niestandardowe workflow automatyzacji
Dział zatytułowany „Niestandardowe workflow automatyzacji”Planowane dzienne podsumowanie
Dział zatytułowany „Planowane dzienne podsumowanie”name: Daily Reporton: schedule: - cron: "0 9 * * 1-5" # 9 AM w dni robocze
jobs: report: runs-on: ubuntu-latest steps: - uses: anthropics/claude-code-action@v1 with: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} prompt: | Generate a summary of the last 24 hours: 1. List all merged PRs with a one-line description 2. List all open issues created in the last 24 hours 3. Highlight any CI failures on the main branch Create this as a comment on issue #1 (our daily log). claude_args: "--model sonnet --max-turns 5"Automatyczna naprawa problemów lintingu
Dział zatytułowany „Automatyczna naprawa problemów lintingu”name: Auto-Fixon: pull_request: types: [opened]
jobs: fix: runs-on: ubuntu-latest steps: - uses: anthropics/claude-code-action@v1 with: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} prompt: | Run the linter and fix any issues. If there are type errors, fix those too. Commit the changes with a clear message. claude_args: "--max-turns 15"Bedrock i Vertex AI w CI/CD
Dział zatytułowany „Bedrock i Vertex AI w CI/CD”AWS Bedrock
Dział zatytułowany „AWS Bedrock”jobs: claude: runs-on: ubuntu-latest permissions: id-token: write contents: read pull-requests: write issues: write steps: - uses: aws-actions/configure-aws-credentials@v4 with: role-to-assume: arn:aws:iam::123456789:role/claude-github-actions aws-region: us-east-1
- uses: anthropics/claude-code-action@v1 with: use_bedrock: "true"Google Vertex AI
Dział zatytułowany „Google Vertex AI”jobs: claude: runs-on: ubuntu-latest permissions: id-token: write contents: read pull-requests: write issues: write steps: - uses: google-github-actions/auth@v2 with: workload_identity_provider: projects/123/locations/global/workloadIdentityPools/github/providers/github service_account: claude@project.iam.gserviceaccount.com
- uses: anthropics/claude-code-action@v1 with: use_vertex: "true" vertex_region: "us-east5" vertex_project_id: "your-project-id"Optymalizacja kosztów
Dział zatytułowany „Optymalizacja kosztów”Koszty GitHub Actions
Dział zatytułowany „Koszty GitHub Actions”Claude Code działa na runnerach hostowanych przez GitHub, zużywając twoje minuty Actions. Każde uruchomienie zużywa również tokeny API w zależności od złożoności zadania.
Strategie optymalizacji
Dział zatytułowany „Strategie optymalizacji”- Ustaw
--max-turns: Zapobiegaj niekontrolowanym jobom. 5-10 tur wystarczy do większości przeglądów. - Używaj Sonnet: Domyślnie jest Sonnet, który jest znacząco tańszy niż Opus do zadań CI.
- Dodaj timeouty: Ustaw timeouty na poziomie workflow, aby zapobiec nieskończonym pętlom.
- Użyj kontroli współbieżności: Ogranicz równoległe uruchomienia per PR.
jobs: claude: runs-on: ubuntu-latest timeout-minutes: 10 concurrency: group: claude-${{ github.event.pull_request.number }} cancel-in-progress: trueKiedy coś idzie nie tak
Dział zatytułowany „Kiedy coś idzie nie tak”Claude nie odpowiada na @claude: Sprawdź, czy aplikacja Claude na GitHub jest zainstalowana i ma poprawne uprawnienia (Contents, Issues, Pull requests — wszystkie Read & Write).
CI nie uruchamia się na commitach Claude’a: Domyślnie GitHub Actions nie uruchamiają się na commitach wykonanych przez aplikacje GitHub. Jeśli potrzebujesz, aby CI działało na commitach Claude’a, użyj niestandardowej aplikacji GitHub z actions/create-github-app-token.
Błędy uwierzytelniania z Bedrock/Vertex: Wymiana tokenów OIDC wymaga poprawnej konfiguracji dostawcy tożsamości w twoim koncie chmurowym. Zweryfikuj, czy polityka zaufania odpowiada twojemu repozytorium.
Actions kosztują więcej niż oczekiwano: Długotrwałe zadania z Opus mogą zużyć znaczną ilość tokenów. Zacznij od --model sonnet i --max-turns 5, a następnie zwiększ tylko jeśli jakość przeglądu jest niewystarczająca.
Co dalej
Dział zatytułowany „Co dalej”- Monitoring i koszty — Śledź koszty CI obok użycia deweloperskiego
- Hooki i automatyzacja — Połącz hooki z GitHub Actions dla kompleksowej automatyzacji
- Niestandardowe komendy — Tworzenie komend do przeglądów, które działają zarówno w CLI, jak i w CI