CI'da Claude Code — headless çalıştırma
Claude Code'u boru hattında çalıştırma kalıbı: tek seferlik komut, JSON çıktı, çıkış kodu kontrolü. İnsan onayı olmadığı için izinlerin nasıl verileceği kritik.
Kaynak: Claude Code dokümantasyonu
Claude Code'u boru hattında çalıştırma kalıbı: tek seferlik komut, JSON çıktı, çıkış kodu kontrolü. İnsan onayı olmadığı için izinlerin nasıl verileceği kritik.
Kaynak: Claude Code dokümantasyonu
curl -sL https://www.antrophiclove.com/api/kaynak/ci-da-claude-code-headless-calistirma/rawBu içerik mevcut dosyaya elle harmanlanmalı: ci-da-claude-code-headless-calistirma.md
claude -p "Değişen dosyalarda eksik hata yakalama var mı? Yalnızca bulguları listele."
--output-format json
--allowedTools "Read,Grep,Glob,Bash(git diff *)"
--max-turns 12
RESULT=$(claude -p "$PROMPT" --output-format json --allowedTools "Read,Grep") echo "$RESULT" | jq -r '.result' # metin yanıt echo "$RESULT" | jq -r '.total_cost_usd' # maliyet echo "$RESULT" | jq -r '.num_turns'
name: Claude review on: pull_request
jobs: review: runs-on: ubuntu-latest permissions: contents: read pull-requests: write steps: - uses: actions/checkout@v4 with: { fetch-depth: 0 }
- name: Claude Code
uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
prompt: |
Bu PR'ın diff'ini incele. Yalnızca gerçek hataları bildir:
null/undefined erişimi, yarış durumu, sızdırılan kaynak,
eksik yetki kontrolü. Stil yorumu yapma.
claude_args: "--max-turns 15 --allowedTools Read,Grep,Glob"
İnsan onayı olmadığı için izin listesi dar tutulmalı:
--max-turns koymadan CI'ya bırakma; döngüye giren bir çalıştırma beklenmedik fatura çıkarır.