Jalankan Claude Code di GitHub Actions dan Pipeline CI/CD
Claude Code berjalan dalam mode headless untuk CI/CD. Gunakan di GitHub Actions untuk auto-review PR, triase issue, menghasilkan perbaikan, dan menjaga kualitas kode secara skala.
Mode headless Claude Code (flag -p) memungkinkannya berjalan tanpa interaksi manusia, yang membuatnya sempurna untuk pipeline CI/CD. Anda dapat mengotomatisasi code review, menghasilkan perbaikan untuk tes yang gagal, triase issue, dan menegakkan standar kode di setiap push.
Bagaimana cara menjalankan Claude Code dalam mode headless?
Flag -p menjalankan Claude Code dengan prompt dan keluar ketika selesai. Ia membaca proyek, mengeksekusi tugas, dan mengeluarkan hasilnya. Tidak diperlukan terminal interaktif.
# Penggunaan headless dasar
claude -p "Review perubahan di commit terakhir dan laporkan masalah apa pun"
# Dengan format output
claude -p "Daftar semua komentar TODO di codebase" --output-format json
# Dengan batas anggaran
claude -p "Perbaiki tes yang gagal" --max-budget-usd 1.00Bagaimana cara menyiapkan Claude Code di GitHub Actions?
name: AI Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Claude Code
run: npm install -g @anthropic-ai/claude-code
- name: Review PR
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
claude -p "Review perubahan di PR ini. \
Periksa bug, masalah keamanan, dan pelanggaran style. \
Posting review Anda sebagai komentar PR." \
--max-budget-usd 2.00 \
--dangerously-skip-permissionsFlag --dangerously-skip-permissions diperlukan di CI/CD karena tidak ada manusia untuk menyetujui penggunaan tool. Hanya gunakan ini di lingkungan terkontrol dengan kode terpercaya. Jangan pernah gunakan di repositori publik tanpa kontrol akses yang cermat.
Tugas CI/CD apa yang bisa diotomatisasi Claude Code?
| Tugas | Pemicu | Yang dilakukan Claude Code |
|---|---|---|
| Code review PR | pull_request dibuka | Review diff, posting komentar tentang masalah yang ditemukan |
| Perbaiki tes gagal | push (setelah tes gagal) | Membaca output tes, memperbaiki kode, push commit |
| Triase issue | issues dibuka | Membaca issue, menambahkan label, menentukan prioritas |
| Pembuatan changelog | release dipublikasikan | Membaca commit sejak tag terakhir, menghasilkan changelog |
| Pembaruan dokumentasi | push ke main | Memperbarui API docs berdasarkan perubahan kode |
| Audit keamanan | jadwal (mingguan) | Memindai kerentanan umum, membuka issue |
Bagaimana menangani API key dan biaya?
- +Simpan ANTHROPIC_API_KEY di GitHub Secrets (jangan pernah di kode)
- +Gunakan --max-budget-usd untuk membatasi pengeluaran per run (misalnya, $2 per review PR)
- +Gunakan model Sonnet untuk tugas yang sensitif biaya: claude -p "..." --model sonnet
- +Pantau penggunaan di dashboard Anthropic Anda
Bagaimana cara menggunakan Claude Code dengan GitLab CI?
# .gitlab-ci.yml
ai-review:
stage: review
image: node:20
script:
- npm install -g @anthropic-ai/claude-code
- claude -p "Review perubahan MR dan laporkan masalah" --max-budget-usd 2.00 --dangerously-skip-permissions
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"