@claude di PR atau issue mana pun, Claude dapat menganalisis kode Anda, membuat pull request, mengimplementasikan fitur, dan memperbaiki bug - semuanya sambil mengikuti standar proyek Anda.
Claude Code GitHub Actions dibangun di atas Claude Code
SDK, yang memungkinkan integrasi programatik
Claude Code ke dalam aplikasi Anda. Anda dapat menggunakan SDK untuk membangun alur kerja
otomasi kustom di luar GitHub Actions.
Mengapa menggunakan Claude Code GitHub Actions?
- Pembuatan PR instan: Jelaskan 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 panduan
CLAUDE.mdAnda dan pola kode yang ada - Pengaturan sederhana: Mulai dalam hitungan menit dengan installer dan kunci API kami
- Aman secara default: Kode Anda tetap berada di runner Github
Apa yang dapat dilakukan Claude?
Claude Code menyediakan GitHub Action 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 menggunakannya untuk membangun alur kerja kustom apa pun di atas Claude Code. Lihat repositori →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 rahasia yang diperlukan.
- Anda harus menjadi admin repositori untuk menginstal aplikasi GitHub dan menambahkan rahasia
- Aplikasi GitHub akan meminta izin baca & tulis untuk Contents, Issues, dan Pull requests
- Metode quickstart ini hanya tersedia untuk pengguna Claude API 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 GitHub Claude ke repositori Anda: https://github.com/apps/claude
Aplikasi GitHub Claude memerlukan izin repositori berikut:
- Contents: Baca & tulis (untuk memodifikasi file repositori)
- Issues: Baca & tulis (untuk merespons issue)
- Pull requests: Baca & tulis (untuk membuat PR dan mendorong perubahan)
- Tambahkan ANTHROPIC_API_KEY ke rahasia repositori Anda (Pelajari cara menggunakan rahasia di GitHub Actions)
-
Salin file alur kerja dari examples/claude.yml ke dalam direktori
.github/workflows/repositori Anda
Upgrade dari Beta
Jika Anda saat ini menggunakan versi beta Claude Code GitHub Actions, kami merekomendasikan untuk memperbarui alur kerja Anda agar menggunakan versi GA. Versi baru menyederhanakan konfigurasi sambil menambahkan fitur baru yang kuat seperti deteksi mode otomatis.Perubahan penting
Semua pengguna beta harus membuat perubahan ini pada file alur kerja mereka untuk upgrade:- Perbarui versi action: Ubah
@betamenjadi@v1 - Hapus konfigurasi mode: Hapus
mode: "tag"ataumode: "agent"(sekarang terdeteksi otomatis) - Perbarui input prompt: Ganti
direct_promptdenganprompt - Pindahkan opsi CLI: Konversi
max_turns,model,custom_instructions, dll. keclaude_args
Referensi Perubahan yang Merusak
| Input Beta Lama | Input v1.0 Baru |
|---|---|
mode | (Dihapus - terdeteksi otomatis) |
direct_prompt | prompt |
override_prompt | prompt dengan variabel GitHub |
custom_instructions | claude_args: --system-prompt |
max_turns | claude_args: --max-turns |
model | claude_args: --model |
allowed_tools | claude_args: --allowedTools |
disallowed_tools | claude_args: --disallowedTools |
claude_env | settings format JSON |
Contoh Sebelum dan Sesudah
Versi beta:Contoh kasus penggunaan
Claude Code GitHub Actions dapat membantu Anda dengan berbagai tugas. Direktori examples berisi alur kerja siap pakai untuk skenario berbeda.Alur kerja dasar
Menggunakan perintah slash
Otomasi kustom dengan prompt
Kasus penggunaan umum
Dalam komentar issue atau PR:Praktik terbaik
Konfigurasi CLAUDE.md
Buat fileCLAUDE.md di akar repositori Anda untuk menentukan panduan gaya kode, kriteria review, aturan khusus proyek, dan pola pilihan. File ini memandu pemahaman Claude tentang standar proyek Anda.
Pertimbangan keamanan
Untuk panduan keamanan komprehensif termasuk izin, autentikasi, dan praktik terbaik, lihat dokumentasi keamanan Claude Code Action. Selalu gunakan GitHub Secrets untuk kunci API:- Tambahkan kunci API Anda sebagai rahasia repositori bernama
ANTHROPIC_API_KEY - Referensikan dalam alur kerja:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} - Batasi izin action hanya untuk apa yang diperlukan
- Tinjau saran Claude sebelum merge
${{ secrets.ANTHROPIC_API_KEY }}) daripada hardcoding kunci API langsung dalam file alur kerja Anda.
Mengoptimalkan kinerja
Gunakan template issue untuk memberikan konteks, jagaCLAUDE.md Anda ringkas dan terfokus, dan konfigurasikan timeout yang sesuai untuk alur kerja Anda.
Biaya CI
Saat menggunakan Claude Code GitHub Actions, waspadai biaya yang terkait: Biaya GitHub Actions:- Claude Code berjalan di runner yang dihosting GitHub, yang mengonsumsi menit GitHub Actions Anda
- Lihat dokumentasi penagihan GitHub untuk harga terperinci dan batas menit
- Setiap interaksi Claude mengonsumsi token API berdasarkan panjang prompt dan respons
- Penggunaan token bervariasi menurut kompleksitas tugas dan ukuran basis kode
- Lihat halaman harga Claude untuk tarif token saat ini
- Gunakan perintah
@claudespesifik untuk mengurangi panggilan API yang tidak perlu - Konfigurasikan
--max-turnsyang sesuai dalamclaude_argsuntuk mencegah iterasi berlebihan - Tetapkan timeout tingkat alur kerja untuk menghindari pekerjaan yang lari
- Pertimbangkan menggunakan kontrol concurrency GitHub untuk membatasi run paralel
Contoh konfigurasi
Claude Code Action v1 menyederhanakan konfigurasi dengan parameter terpadu:- Antarmuka prompt terpadu - Gunakan
promptuntuk semua instruksi - Perintah slash - Prompt pra-bangun seperti
/reviewatau/fix - Passthrough CLI - Argumen CLI Claude Code apa pun melalui
claude_args - Pemicu fleksibel - Bekerja dengan acara GitHub apa pun
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
- Akun layanan dengan izin yang diperlukan
- Aplikasi GitHub (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
- Aplikasi GitHub (direkomendasikan) atau gunakan GITHUB_TOKEN default
1
Buat aplikasi GitHub kustom (Direkomendasikan untuk Penyedia Pihak Ketiga)
Untuk kontrol dan keamanan terbaik saat menggunakan penyedia pihak ketiga seperti Vertex AI atau Bedrock, kami merekomendasikan membuat aplikasi GitHub Anda sendiri:Alternatif untuk Claude API atau jika Anda tidak ingin mengatur aplikasi Github Anda sendiri: Gunakan aplikasi Anthropic resmi:
- Buka https://github.com/settings/apps/new
- Isi informasi dasar:
- Nama aplikasi GitHub: Pilih nama unik (misalnya, “YourOrg Claude Assistant”)
- URL Beranda: Situs web organisasi Anda atau URL repositori
- Konfigurasikan pengaturan aplikasi:
- Webhooks: Hapus centang “Active” (tidak diperlukan untuk integrasi ini)
- Tetapkan izin yang diperlukan:
- Izin repositori:
- Contents: Baca & Tulis
- Issues: Baca & Tulis
- Pull requests: Baca & Tulis
- Izin repositori:
- Klik “Create GitHub App”
- Setelah pembuatan, klik “Generate a private key” dan simpan file
.pemyang diunduh - Catat ID Aplikasi Anda dari halaman pengaturan aplikasi
- Instal aplikasi ke repositori Anda:
- Dari halaman pengaturan aplikasi Anda, klik “Install App” di sidebar kiri
- Pilih akun atau organisasi Anda
- Pilih “Only select repositories” dan pilih repositori spesifik
- Klik “Install”
- Tambahkan kunci pribadi sebagai rahasia ke repositori Anda:
- Buka Settings → Secrets and variables → Actions repositori Anda
- Buat rahasia baru bernama
APP_PRIVATE_KEYdengan isi file.pem
- Tambahkan ID Aplikasi sebagai rahasia:
- Buat rahasia baru bernama
APP_IDdengan ID Aplikasi GitHub Anda
Aplikasi ini akan digunakan dengan action actions/create-github-app-token untuk menghasilkan token autentikasi dalam alur kerja Anda.
- Instal dari: https://github.com/apps/claude
- Tidak ada konfigurasi tambahan yang diperlukan untuk autentikasi
2
Konfigurasikan autentikasi penyedia cloud
Pilih penyedia cloud Anda dan atur autentikasi aman:
AWS Bedrock
AWS Bedrock
Konfigurasikan AWS untuk memungkinkan GitHub Actions mengautentikasi dengan aman tanpa menyimpan kredensial.
Catatan Keamanan: Gunakan konfigurasi khusus repositori dan berikan hanya izin minimum yang diperlukan.Pengaturan yang Diperlukan:
-
Aktifkan Amazon Bedrock:
- Minta akses ke model Claude di Amazon Bedrock
- Untuk model lintas wilayah, minta akses di semua wilayah yang diperlukan
-
Atur GitHub OIDC Identity Provider:
- URL Penyedia:
https://token.actions.githubusercontent.com - Audience:
sts.amazonaws.com
- URL Penyedia:
-
Buat Peran IAM untuk GitHub Actions:
- Jenis entitas terpercaya: Web identity
- Penyedia identitas:
token.actions.githubusercontent.com - Izin: kebijakan
AmazonBedrockFullAccess - Konfigurasikan kebijakan kepercayaan untuk repositori spesifik Anda
- AWS_ROLE_TO_ASSUME: ARN dari peran IAM yang Anda buat
Google Vertex AI
Google Vertex AI
Konfigurasikan Google Cloud untuk memungkinkan GitHub Actions mengautentikasi dengan aman tanpa menyimpan kredensial.
Catatan Keamanan: Gunakan konfigurasi khusus repositori dan berikan hanya izin minimum yang diperlukan.Pengaturan yang Diperlukan:
-
Aktifkan API di proyek Google Cloud Anda:
- IAM Credentials API
- Security Token Service (STS) API
- Vertex AI API
-
Buat sumber daya Workload Identity Federation:
- Buat Workload Identity Pool
- Tambahkan penyedia OIDC GitHub dengan:
- Issuer:
https://token.actions.githubusercontent.com - Pemetaan atribut untuk repositori dan pemilik
- Rekomendasi keamanan: Gunakan kondisi atribut khusus repositori
- Issuer:
-
Buat Akun Layanan:
- Berikan hanya peran
Vertex AI User - Rekomendasi keamanan: Buat akun layanan khusus per repositori
- Berikan hanya peran
-
Konfigurasikan pengikatan IAM:
- Izinkan Workload Identity Pool untuk menyamar sebagai akun layanan
- Rekomendasi keamanan: Gunakan set principal khusus repositori
- GCP_WORKLOAD_IDENTITY_PROVIDER: Nama sumber daya penyedia lengkap
- GCP_SERVICE_ACCOUNT: Alamat email akun layanan
3
Tambahkan Rahasia yang Diperlukan
Tambahkan rahasia berikut ke repositori Anda (Settings → Secrets and variables → Actions):
Untuk Claude API (Langsung):
-
Untuk Autentikasi API:
ANTHROPIC_API_KEY: Kunci Claude API Anda dari console.anthropic.com
-
Untuk Aplikasi GitHub (jika menggunakan aplikasi Anda sendiri):
APP_ID: ID Aplikasi GitHub AndaAPP_PRIVATE_KEY: Konten kunci pribadi (.pem)
Untuk Google Cloud Vertex AI
-
Untuk Autentikasi GCP:
GCP_WORKLOAD_IDENTITY_PROVIDERGCP_SERVICE_ACCOUNT
-
Untuk Aplikasi GitHub (jika menggunakan aplikasi Anda sendiri):
APP_ID: ID Aplikasi GitHub AndaAPP_PRIVATE_KEY: Konten kunci pribadi (.pem)
Untuk AWS Bedrock
-
Untuk Autentikasi AWS:
AWS_ROLE_TO_ASSUME
-
Untuk Aplikasi GitHub (jika menggunakan aplikasi Anda sendiri):
APP_ID: ID Aplikasi GitHub AndaAPP_PRIVATE_KEY: Konten kunci pribadi (.pem)
4
Buat file alur kerja
Buat file alur kerja GitHub Actions yang terintegrasi dengan penyedia cloud Anda. Contoh di bawah menunjukkan konfigurasi lengkap untuk AWS Bedrock dan Google Vertex AI:
Alur kerja AWS Bedrock
Alur kerja AWS Bedrock
Prasyarat:
- Akses AWS Bedrock diaktifkan dengan izin model Claude
- GitHub dikonfigurasi sebagai penyedia identitas OIDC di AWS
- Peran IAM dengan izin Bedrock yang mempercayai GitHub Actions
| Nama Rahasia | Deskripsi |
|---|---|
AWS_ROLE_TO_ASSUME | ARN dari peran IAM untuk akses Bedrock |
APP_ID | ID Aplikasi GitHub Anda (dari pengaturan aplikasi) |
APP_PRIVATE_KEY | Kunci pribadi yang Anda hasilkan untuk Aplikasi GitHub Anda |
Alur kerja Google Vertex AI
Alur kerja Google Vertex AI
Prasyarat:
- Vertex AI API diaktifkan di proyek GCP Anda
- Workload Identity Federation dikonfigurasi untuk GitHub
- Akun layanan dengan izin Vertex AI
| Nama Rahasia | Deskripsi |
|---|---|
GCP_WORKLOAD_IDENTITY_PROVIDER | Nama sumber daya penyedia identitas beban kerja |
GCP_SERVICE_ACCOUNT | Email akun layanan dengan akses Vertex AI |
APP_ID | ID Aplikasi GitHub Anda (dari pengaturan aplikasi) |
APP_PRIVATE_KEY | Kunci pribadi yang Anda hasilkan untuk Aplikasi GitHub Anda |
Pemecahan masalah
Claude tidak merespons perintah @claude
Verifikasi aplikasi GitHub diinstal dengan benar, periksa bahwa alur kerja diaktifkan, pastikan kunci API diatur dalam rahasia repositori, dan konfirmkan komentar berisi@claude (bukan /claude).
CI tidak berjalan pada commit Claude
Pastikan Anda menggunakan aplikasi GitHub atau aplikasi kustom (bukan pengguna Actions), periksa pemicu alur kerja mencakup acara yang diperlukan, dan verifikasi izin aplikasi mencakup pemicu CI.Kesalahan autentikasi
Konfirmkan kunci API valid dan memiliki izin yang cukup. Untuk Bedrock/Vertex, periksa konfigurasi kredensial dan pastikan rahasia dinamai dengan benar dalam alur kerja.Konfigurasi lanjutan
Parameter action
Claude Code Action v1 menggunakan konfigurasi yang disederhanakan:| Parameter | Deskripsi | Diperlukan |
|---|---|---|
prompt | Instruksi untuk Claude (teks atau perintah slash) | Tidak* |
claude_args | Argumen CLI yang dilewatkan ke Claude Code | Tidak |
anthropic_api_key | Kunci Claude API | Ya** |
github_token | Token GitHub untuk akses API | Tidak |
trigger_phrase | Frasa pemicu kustom (default: “@claude”) | Tidak |
use_bedrock | Gunakan AWS Bedrock alih-alih Claude API | Tidak |
use_vertex | Gunakan Google Vertex AI alih-alih Claude API | Tidak |
**Diperlukan untuk Claude API langsung, bukan untuk Bedrock/Vertex
Menggunakan claude_args
Parameterclaude_args menerima argumen CLI Claude Code apa pun:
--max-turns: Putaran percakapan maksimum (default: 10)--model: Model yang digunakan (misalnya,claude-sonnet-4-5-20250929)--mcp-config: Jalur ke konfigurasi MCP--allowed-tools: Daftar alat yang diizinkan dipisahkan koma--debug: Aktifkan output debug
Metode integrasi alternatif
Meskipun perintah/install-github-app adalah pendekatan yang direkomendasikan, Anda juga dapat:
- Aplikasi GitHub Kustom: Untuk organisasi yang memerlukan nama pengguna bermerek atau alur autentikasi kustom. Buat aplikasi GitHub Anda sendiri dengan izin yang diperlukan (contents, issues, pull requests) dan gunakan action actions/create-github-app-token untuk menghasilkan token dalam alur kerja Anda.
- GitHub Actions Manual: Konfigurasi alur kerja langsung untuk fleksibilitas maksimum
- Konfigurasi MCP: Pemuatan dinamis server Model Context Protocol
Menyesuaikan perilaku Claude
Anda dapat mengonfigurasi perilaku Claude dengan dua cara:- CLAUDE.md: Tentukan standar pengkodean, kriteria review, dan aturan khusus proyek dalam file
CLAUDE.mddi akar repositori Anda. Claude akan mengikuti panduan ini saat membuat PR dan merespons permintaan. Lihat dokumentasi Memory kami untuk detail lebih lanjut. - Prompt kustom: Gunakan parameter
promptdalam file alur kerja untuk memberikan instruksi khusus alur kerja. Ini memungkinkan Anda menyesuaikan perilaku Claude untuk alur kerja atau tugas berbeda.