@claude sederhana di PR atau issue apa 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 menggunakan ini 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 Claude GitHub ke repositori Anda: https://github.com/apps/claude
Aplikasi Claude GitHub 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 push 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
Setelah menyelesaikan pengaturan cepat atau manual, uji action dengan
menandai
@claude dalam komentar issue atau PR!Meningkatkan dari Beta
Claude Code GitHub Actions v1.0 memperkenalkan perubahan yang merusak yang memerlukan pembaruan file alur kerja Anda untuk meningkatkan ke v1.0 dari versi beta.
Perubahan penting
Semua pengguna beta harus membuat perubahan ini pada file alur kerja mereka untuk meningkatkan:- 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:Action sekarang secara otomatis mendeteksi apakah akan dijalankan dalam mode interaktif (merespons penyebutan
@claude) atau mode otomasi (berjalan segera dengan prompt) berdasarkan konfigurasi Anda.Contoh kasus penggunaan
Claude Code GitHub Actions dapat membantu Anda dengan berbagai tugas. Direktori contoh berisi alur kerja siap pakai untuk skenario berbeda.Alur kerja dasar
Menggunakan slash commands
Otomasi kustom dengan prompt
Kasus penggunaan umum
Dalam komentar issue atau PR:Praktik terbaik
Konfigurasi CLAUDE.md
Buat fileCLAUDE.md di root repositori Anda untuk menentukan panduan 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 kunci API langsung ke repositori Anda!
- 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 terkait: Biaya GitHub Actions:- Claude Code berjalan di runner yang dihosting GitHub, yang menggunakan menit GitHub Actions Anda
- Lihat dokumentasi penagihan GitHub untuk harga terperinci dan batas menit
- Setiap interaksi Claude menggunakan 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 tidak terkontrol
- 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 - Slash commands - 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
Saat merespons komentar issue atau PR, Claude secara otomatis merespons penyebutan @claude. Untuk acara lainnya, gunakan parameter
prompt untuk memberikan instruksi.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 menyiapkan 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 menyiapkan 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 siapkan autentikasi aman:
AWS Bedrock
AWS Bedrock
Konfigurasikan AWS untuk memungkinkan GitHub Actions mengautentikasi dengan aman tanpa menyimpan kredensial.Lihat dokumentasi AWS untuk instruksi pengaturan OIDC terperinci.
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
-
Siapkan 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
OIDC lebih aman daripada menggunakan kunci akses AWS statis karena kredensial bersifat sementara dan secara otomatis dirotasi.
Google Vertex AI
Google Vertex AI
Konfigurasikan Google Cloud untuk memungkinkan GitHub Actions mengautentikasi dengan aman tanpa menyimpan kredensial.Untuk instruksi pengaturan terperinci, konsultasikan dokumentasi Workload Identity Federation Google Cloud.
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
Workload Identity Federation menghilangkan kebutuhan untuk kunci akun layanan yang dapat diunduh, meningkatkan keamanan.
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: Isi 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: Isi 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: Isi 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 |
Format ID model untuk Bedrock mencakup awalan wilayah (misalnya,
us.anthropic.claude...) dan akhiran versi.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 workload |
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 |
ID proyek secara otomatis diambil dari langkah autentikasi Google Cloud, jadi Anda tidak perlu hardcode.
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 slash command) | Tidak* |
claude_args | Argumen CLI yang diteruskan 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 root 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.