Skip to content
CI/CD ve Otomasyon İleri

Çoklu Repo Toplu İşlemleri

Tek bir otomatik taramada birden fazla depoda Claude'u çalıştırın

Komut

$ "color:#7C5CFC">for repo in repo1 repo2 repo3; "color:#7C5CFC">do
    "color:#7C5CFC">echo "=== $repo ==="
    ("color:#7C5CFC">cd "$repo" && CLAUDECODE="" "color:#7C5CFC">claude -p \
      "Summarize recent changes and flag any issues" \
      "color:#d97757">--output-format json \
      "color:#d97757">--max-budget-usd 0.50 \
      "color:#d97757">--no-session-persistence \
      "color:#d97757">--permission-mode bypassPermissions)
  "color:#7C5CFC">done

Yanıt

=== repo1 ===
{ "result": "3 files changed in auth module...", "total_cost_usd": 0.12 }
=== repo2 ===
{ "result": "No significant changes...", "total_cost_usd": 0.04 }

Ayrıştırma Kodu

059669">">const repos = [059669059669">">'repo1', 059669059669">">'repo2', 059669059669">">'repo3'];
059669">">for (059669">">const repo 059669">">of repos) {
  059669">">const data = JSON.parse(execFileSync(059669059669">">'claude', [
    059669059669">">'-p', 059669059669">">'Summarize changes', 059669059669">">'--output-format', 059669059669">">'json',
    059669059669">">'--no-session-persistence', 059669059669">">'--permission-mode', 059669059669">">'bypassPermissions'
  ], { cwd: repo, encoding: 059669059669">">'utf-8', env: { ...process.env, CLAUDECODE: 059669059669">">'' } }));
  console.log(059669">`${repo}: $${data.total_cost_usd}`);
}

Tuzaklar

! Her repo kendi cwd'sinde çalışır — CLAUDE.md repo bazında okunur
! Disk kirliliğini önlemek için toplu işlemlerde --no-session-persistence kullanın

İlgili Tarifler