Claude Code GitHub Actions
Pelajari tentang mengintegrasikan Claude Code ke dalam alur kerja pengembangan Anda dengan Claude Code GitHub Actions
Claude Code GitHub Actions menghadirkan otomatisasi bertenaga AI ke alur kerja GitHub Anda. Dengan menyebut @claude
sederhana di PR atau issue apa pun, Claude dapat menganalisis kode Anda, membuat pull request, mengimplementasikan fitur, dan memperbaiki bug - semua sambil mengikuti standar proyek Anda.
Claude Code GitHub Actions saat ini dalam versi beta. Fitur dan fungsionalitas mungkin berkembang seiring kami menyempurnakan pengalaman.
Claude Code GitHub Actions dibangun di atas Claude Code SDK, yang memungkinkan integrasi programatis Claude Code ke dalam aplikasi Anda. Anda dapat menggunakan SDK untuk membangun alur kerja otomatisasi kustom di luar GitHub Actions.
Mengapa menggunakan Claude Code GitHub Actions?
- Pembuatan PR instan: Deskripsikan apa yang Anda butuhkan, dan Claude membuat PR lengkap dengan semua perubahan yang diperlukan
- Implementasi kode otomatis: Ubah issue menjadi kode yang berfungsi dengan satu perintah
- Mengikuti standar Anda: Claude menghormati pedoman
CLAUDE.md
Anda dan pola kode yang ada - Pengaturan sederhana: Mulai dalam hitungan menit dengan installer dan API key kami
- Aman secara default: Kode Anda tetap di runner GitHub
Apa yang bisa dilakukan Claude?
Claude Code menyediakan GitHub Actions yang kuat yang mengubah cara Anda bekerja dengan kode:
Claude Code Action
GitHub Action ini memungkinkan Anda menjalankan Claude Code dalam alur kerja GitHub Actions Anda. Anda dapat menggunakan ini untuk membangun alur kerja kustom apa pun di atas Claude Code.
Claude Code Action (Base)
Fondasi untuk membangun alur kerja GitHub kustom dengan Claude. Framework yang dapat diperluas ini memberi Anda akses penuh ke kemampuan Claude untuk membuat otomatisasi yang disesuaikan.
Pengaturan
Pengaturan cepat
Cara termudah untuk mengatur action ini adalah melalui Claude Code di terminal. Cukup buka claude dan jalankan /install-github-app
.
Perintah ini akan memandu Anda melalui pengaturan aplikasi GitHub dan secret yang diperlukan.
- Anda harus menjadi admin repositori untuk menginstal aplikasi GitHub dan menambahkan secret
- Metode quickstart ini hanya tersedia untuk pengguna API Anthropic langsung. Jika Anda menggunakan AWS Bedrock atau Google Vertex AI, silakan lihat bagian Menggunakan dengan AWS Bedrock & Google Vertex AI.
Pengaturan manual
Jika perintah /install-github-app
gagal atau Anda lebih suka pengaturan manual, silakan ikuti instruksi pengaturan manual ini:
- Instal aplikasi Claude GitHub ke repositori Anda: https://github.com/apps/claude
- Tambahkan ANTHROPIC_API_KEY ke secret repositori Anda (Pelajari cara menggunakan secret di GitHub Actions)
- Salin file workflow dari examples/claude.yml ke
.github/workflows/
repositori Anda
Setelah menyelesaikan pengaturan quickstart atau manual, uji action dengan menandai @claude
di komentar issue atau PR!
Contoh kasus penggunaan
Claude Code GitHub Actions dapat membantu Anda dengan berbagai tugas. Untuk contoh lengkap yang berfungsi, lihat direktori examples.
Ubah issue menjadi PR
Di komentar issue:
Claude akan menganalisis issue, menulis kode, dan membuat PR untuk ditinjau.
Dapatkan bantuan implementasi
Di komentar PR:
Claude akan menganalisis kode Anda dan memberikan panduan implementasi spesifik.
Perbaiki bug dengan cepat
Di issue:
Claude akan menemukan bug, mengimplementasikan perbaikan, dan membuat PR.
Praktik terbaik
Konfigurasi CLAUDE.md
Buat file CLAUDE.md
di root repositori Anda untuk mendefinisikan pedoman gaya kode, kriteria review, aturan khusus proyek, dan pola yang disukai. File ini memandu pemahaman Claude tentang standar proyek Anda.
Pertimbangan keamanan
Jangan pernah commit API key langsung ke repositori Anda!
Selalu gunakan GitHub Secrets untuk API key:
- Tambahkan API key Anda sebagai secret repositori bernama
ANTHROPIC_API_KEY
- Referensikan di workflow:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
- Batasi izin action hanya pada yang diperlukan
- Tinjau saran Claude sebelum merge
Selalu gunakan GitHub Secrets (misalnya, ${{ secrets.ANTHROPIC_API_KEY }}
) daripada hardcode API key langsung di file workflow Anda.
Mengoptimalkan performa
Gunakan template issue untuk memberikan konteks, jaga CLAUDE.md
Anda tetap ringkas dan fokus, dan konfigurasikan timeout yang sesuai untuk workflow Anda.
Biaya CI
Saat menggunakan Claude Code GitHub Actions, waspadai biaya terkait:
Biaya GitHub Actions:
- Claude Code berjalan di runner yang dihosting GitHub, yang mengonsumsi menit GitHub Actions Anda
- Lihat dokumentasi penagihan GitHub untuk harga detail dan batas menit
Biaya API:
- Setiap interaksi Claude mengonsumsi token API berdasarkan panjang prompt dan respons
- Penggunaan token bervariasi berdasarkan kompleksitas tugas dan ukuran codebase
- Lihat halaman harga Claude untuk tarif token saat ini
Tips optimasi biaya:
- Gunakan perintah
@claude
spesifik untuk mengurangi panggilan API yang tidak perlu - Konfigurasikan batas
max_turns
yang sesuai untuk mencegah iterasi berlebihan - Atur
timeout_minutes
yang wajar untuk menghindari workflow yang tidak terkendali - Pertimbangkan menggunakan kontrol concurrency GitHub untuk membatasi run paralel
Contoh konfigurasi
Untuk konfigurasi workflow siap pakai untuk berbagai kasus penggunaan, termasuk:
- Pengaturan workflow dasar untuk komentar issue dan PR
- Review kode otomatis pada pull request
- Implementasi kustom untuk kebutuhan spesifik
Kunjungi direktori examples di repositori Claude Code Action.
Repositori examples mencakup workflow lengkap dan teruji yang dapat Anda salin langsung ke direktori .github/workflows/
Anda.
Menggunakan dengan AWS Bedrock & Google Vertex AI
Untuk lingkungan enterprise, Anda dapat menggunakan Claude Code GitHub Actions dengan infrastruktur cloud Anda sendiri. Pendekatan ini memberi Anda kontrol atas residensi data dan penagihan sambil mempertahankan fungsionalitas yang sama.
Prasyarat
Sebelum mengatur Claude Code GitHub Actions dengan penyedia cloud, Anda memerlukan:
Untuk Google Cloud Vertex AI:
- Proyek Google Cloud dengan Vertex AI diaktifkan
- Workload Identity Federation dikonfigurasi untuk GitHub Actions
- Service account dengan izin yang diperlukan
- GitHub App (direkomendasikan) atau gunakan GITHUB_TOKEN default
Untuk AWS Bedrock:
- Akun AWS dengan Amazon Bedrock diaktifkan
- GitHub OIDC Identity Provider dikonfigurasi di AWS
- Peran IAM dengan izin Bedrock
- GitHub App (direkomendasikan) atau gunakan GITHUB_TOKEN default
Buat GitHub App kustom (Direkomendasikan untuk Penyedia 3P)
Untuk kontrol dan keamanan terbaik saat menggunakan penyedia 3P seperti Vertex AI atau Bedrock, kami merekomendasikan membuat GitHub App Anda sendiri:
- Pergi ke https://github.com/settings/apps/new
- Isi informasi dasar:
- GitHub App name: Pilih nama unik (misalnya, “YourOrg Claude Assistant”)
- Homepage URL: Website organisasi Anda atau URL repositori
- Konfigurasikan pengaturan app:
- Webhooks: Hapus centang “Active” (tidak diperlukan untuk integrasi ini)
- Atur izin yang diperlukan:
- Repository permissions:
- Contents: Read & Write
- Issues: Read & Write
- Pull requests: Read & Write
- Repository permissions:
- Klik “Create GitHub App”
- Setelah dibuat, klik “Generate a private key” dan simpan file
.pem
yang diunduh - Catat App ID Anda dari halaman pengaturan app
- Instal app ke repositori Anda:
- Dari halaman pengaturan app Anda, klik “Install App” di sidebar kiri
- Pilih akun atau organisasi Anda
- Pilih “Only select repositories” dan pilih repositori spesifik
- Klik “Install”
- Tambahkan private key sebagai secret ke repositori Anda:
- Pergi ke Settings repositori Anda → Secrets and variables → Actions
- Buat secret baru bernama
APP_PRIVATE_KEY
dengan konten file.pem
- Tambahkan App ID sebagai secret:
- Buat secret baru bernama
APP_ID
dengan ID GitHub App Anda
App ini akan digunakan dengan action actions/create-github-app-token untuk menghasilkan token autentikasi di workflow Anda.
Alternatif untuk Anthropic API atau jika Anda tidak ingin mengatur Github app sendiri: Gunakan app resmi Anthropic:
- Instal dari: https://github.com/apps/claude
- Tidak diperlukan konfigurasi tambahan untuk autentikasi
Konfigurasikan autentikasi penyedia cloud
Pilih penyedia cloud Anda dan atur autentikasi yang aman:
Tambahkan Secret yang Diperlukan
Tambahkan secret berikut ke repositori Anda (Settings → Secrets and variables → Actions):
Untuk Anthropic API (Langsung):
-
Untuk Autentikasi API:
ANTHROPIC_API_KEY
: Kunci API Anthropic Anda dari console.anthropic.com
-
Untuk GitHub App (jika menggunakan app sendiri):
APP_ID
: ID GitHub App AndaAPP_PRIVATE_KEY
: Konten private key (.pem)
Untuk Google Cloud Vertex AI
-
Untuk Autentikasi GCP:
GCP_WORKLOAD_IDENTITY_PROVIDER
GCP_SERVICE_ACCOUNT
-
Untuk GitHub App (jika menggunakan app sendiri):
APP_ID
: ID GitHub App AndaAPP_PRIVATE_KEY
: Konten private key (.pem)
Untuk AWS Bedrock
-
Untuk Autentikasi AWS:
AWS_ROLE_TO_ASSUME
-
Untuk GitHub App (jika menggunakan app sendiri):
APP_ID
: ID GitHub App AndaAPP_PRIVATE_KEY
: Konten private key (.pem)
Buat file workflow
Buat file workflow GitHub Actions yang terintegrasi dengan penyedia cloud Anda. Contoh di bawah ini menunjukkan konfigurasi lengkap untuk AWS Bedrock dan Google Vertex AI:
Pemecahan masalah
Claude tidak merespons perintah @claude
Verifikasi GitHub App terinstal dengan benar, periksa bahwa workflow diaktifkan, pastikan API key diatur di secret repositori, dan konfirmasikan komentar berisi @claude
(bukan /claude
).
CI tidak berjalan pada commit Claude
Pastikan Anda menggunakan GitHub App atau app kustom (bukan pengguna Actions), periksa pemicu workflow mencakup event yang diperlukan, dan verifikasi izin app mencakup pemicu CI.
Error autentikasi
Konfirmasikan API key valid dan memiliki izin yang cukup. Untuk Bedrock/Vertex, periksa konfigurasi kredensial dan pastikan secret diberi nama dengan benar di workflow.
Konfigurasi lanjutan
Parameter action
Claude Code Action mendukung parameter kunci ini:
Parameter | Deskripsi | Diperlukan |
---|---|---|
prompt | Prompt untuk dikirim ke Claude | Ya* |
prompt_file | Path ke file berisi prompt | Ya* |
anthropic_api_key | Kunci API Anthropic | Ya** |
max_turns | Maksimum turn percakapan | Tidak |
timeout_minutes | Timeout eksekusi | Tidak |
*Baik prompt
atau prompt_file
diperlukan
**Diperlukan untuk API Anthropic langsung, tidak untuk Bedrock/Vertex
Metode integrasi alternatif
Meskipun perintah /install-github-app
adalah pendekatan yang direkomendasikan, Anda juga dapat:
- GitHub App Kustom: Untuk organisasi yang membutuhkan username bermerek atau alur autentikasi kustom. Buat GitHub App Anda sendiri dengan izin yang diperlukan (contents, issues, pull requests) dan gunakan action actions/create-github-app-token untuk menghasilkan token di workflow Anda.
- GitHub Actions Manual: Konfigurasi workflow langsung untuk fleksibilitas maksimum
- Konfigurasi MCP: Pemuatan dinamis server Model Context Protocol
Lihat repositori Claude Code Action untuk dokumentasi detail.
Menyesuaikan perilaku Claude
Anda dapat mengonfigurasi perilaku Claude dengan dua cara:
- CLAUDE.md: Definisikan standar coding, kriteria review, dan aturan khusus proyek dalam file
CLAUDE.md
di root repositori Anda. Claude akan mengikuti pedoman ini saat membuat PR dan merespons permintaan. Lihat dokumentasi Memory kami untuk detail lebih lanjut. - Prompt kustom: Gunakan parameter
prompt
di file workflow untuk memberikan instruksi khusus workflow. Ini memungkinkan Anda menyesuaikan perilaku Claude untuk workflow atau tugas yang berbeda.
Claude akan mengikuti pedoman ini saat membuat PR dan merespons permintaan.