Hiç teknik olmayan bir arkadaşınıza çekme isteğinin ne olduğunu açıklamaya çalışıp, gözlerinin bir Krispy Kreme taşıma bandı gibi donuklaştığını gördünüz mü? Şimdi bir yapay zekanın sadece deponuzu anlamakla kalmayıp, aynı zamanda sizin için PR'lar da açabileceğini hayal edin. Kod düzenleyicinizin biraz yardımcı pilot, biraz arka koltuk sürücüsü ve - doğru ayarlarsanız - oldukça iyi bir stajyer olduğu 2025'e hoş geldiniz.
Bu kılavuz, GitHub'ı Claude Code'a nasıl bağlayacağınızı ve otomatik olarak çekme istekleri oluşturacağınızı gösterir. Adım adım kurulum, gerçek dünya iş akışları ve kaçınılması gereken birkaç çukurla "Ne?"den "Gönder gitsin"e geçeceğiz. GitHub'ı bağlayacak, Claude Code'un neler olup bittiğini görmesine izin verecek ve algoritmik şeytanla anlaşma yapmış gibi hissetmeden gerçekten birleştirebileceğiniz PR'lar açmasını ve güncellemesini sağlayacaksınız.
Uyarı: Burada iki ana yol göreceksiniz: Claude Code'un GitHub Actions entegrasyonunu kullanmak ve Claude'a GitHub API'lerine güvenli, kapsamlı erişim sağlamak için Model Context Protocol (MCP) sunucularını kullanmak. Hangisini seçmelisiniz? Doğrudan GitHub'da tak ve çalıştır PR yardımı istiyorsanız, Actions yolu en iyi seçeneğinizdir. Yerel, sohbet odaklı depo kontrolü ve ayrıntılı izinler istiyorsanız, MCP sizin için bir güç aracıdır.
Ne inşa ediyoruz
- GitHub'ı Claude Code'a güvenli bir şekilde bağlayın.
- Claude'un deponuzu analiz etmesine, değişiklikler önermesine ve PR'lar açmasına izin verin.
- İncelemeleri, etiketleri, kontrol listelerini ve hatta takip taahhütlerini otomatikleştirin.
- Tüm monoreponuzu "final_final_v2" olarak yeniden adlandırmaması için koruma rayları ekleyin.
Neden önemli
Çünkü bağlam değiştirme, kimsenin oy vermediği verimlilik vergisidir. Bir yapay zekanın (iyi gününde) genç bir geliştiriciden bekleyeceğiniz aynı titizlikle bir PR açabilmesi gerçek bir zaman tasarrufu sağlar. İnsanların yerini almak için değil - sakin olun - mühendisliğin "uff, boilerplate" kısımlarının yerini almak için.
A Yolu: Claude Code GitHub Actions ile Otomatik PR Oluşturma
Tüm gün GitHub'da yaşıyorsanız (kulübe katılın), bu yol size sorunlarda ve PR'larda kodu analiz edebilen, değişiklikler önerebilen ve hatta doğrudan deponuzdan PR'lar açabilen veya güncelleyebilen bir bot verir.
İhtiyacınız olacak şeyler
- Kontrol ettiğiniz bir GitHub deposu (veya ağlamadan bozabileceğiniz bir dal).
- Actions ve sırları yapılandırmak için depo yönetici erişimi.
- Eyleminizin veya iş akışınızın ihtiyacı varsa, bir Claude API anahtarı.
Adım 1: Deponuzda GitHub Actions'ı Etkinleştirin
- Deponuza → Ayarlar → Actions → Genel'e gidin.
- "Tüm eylemlere ve yeniden kullanılabilir iş akışlarına izin ver"i etkinleştirin (veya güvenlik ekibiniz zaten size yan gözle bakıyorsa, kuruluşunuzun onaylı eylemleriyle kısıtlayın).
Adım 2: Bir Claude Code iş akışı ekleyin
Tercih ettiğiniz iş akışına göre bir tetikleyiciyle .github/workflows/claude-pr-bot.yml oluşturun. İşte iki yaygın model:
Seçenek 1: Sorun Odaklı PR'lar
- Özel bir etiketle (örneğin, ai-pr) bir sorun açtığınızda, iş akışı çalışır.
- Sorun istemini (örneğin, "Karanlık mod geçişi ekle") okur, yeni bir dal oluşturur, Claude'u kullanarak dosyaları düzenler, taahhütleri gönderir ve ayrıntılı bir özetle bir PR açar.
Seçenek 2: Mevcut bir PR'de Yorum Odaklı Düzenlemeler
- @claude lütfen ayarlar modalini yeniden düzenle diye yorum yaptığınızda, iş akışı çalışır.
- Farklılığı analiz eder, değişiklikler önerir ve PR dalına güncellemeler gönderir.
Başlangıç iş akışı (üst düzey taslak)
name: Claude PR Bot
on:
issues:
types: .
- Entegrasyon ve kullanım durumlarına ilişkin hızlı bir kılavuz, gerçek ekiplerde neyin otomatikleştirmenin akıllıca olduğunu (ve neyin olmadığını) size kuşbakışı bir görünüm sunar.
- Görsel bir öğreniciyseniz, bu izlenecek yol, otomatik olarak oluşturulan AI PR'larını baştan sona uygulamada gösterir.
B Yolu: MCP aracılığıyla GitHub'ı Claude Code'a Bağlama (yerel güçlü kullanıcılar için)
Claude'un yerel depo bağlamınızla - makinenizdeki dosyalar, hokkabazlık yaptığınız dallar, güvendiğiniz komutlar - çalışmasını istiyorsanız, MCP size izinli bir köprü sağlar. Bunu deponuz için bir kapıcı olarak düşünün: Claude'un hangi kapıları açabileceğine karar verir.
İhtiyacınız olacak şeyler
- MCP araçlarını destekleyen Claude Desktop veya bir IDE entegrasyonu.
- Yerel olarak çalıştırdığınız, kapsamları sınırlayan bir belirteçle yapılandırılmış bir GitHub MCP sunucusu.
- Gerçekten ihtiyacınız olan kapsamlara sahip bir kişisel erişim belirteci (PAT) (örneğin, repo:status, public_repo, pull_request write).
Adım 1: Bir GitHub MCP sunucusu alın
- Seçili GitHub API işlemlerini (sorunları arama, dallar oluşturma, PR'lar açma vb.) ortaya çıkaran resmi bir açık kaynak sunucusu vardır. Yalnızca ihtiyacınız olanı etkinleştirecek şekilde yapılandırılabilir, bu da AI karışıklığını azaltır ve güvenliği mutlu tutar. MCP sunucularının ve örneklerinin daha geniş bir görünümü için merkezi dizine bakın.
Adım 2: İstemcinizi sunucuyla konuşacak şekilde yapılandırın
- İstemci yapılandırma dosyanızda (örneğin, AI uygulamanız için bir JSON yapılandırması), GitHub MCP sunucusunu kaydedin, belirtecinizi ortam değişkenleri aracılığıyla iletin ve izin verilen depoları beyaz listeye alın.
- Profesyonel ipucu: Belirteci yapılandırma dosyanıza değil, sistem anahtarlığınıza veya bir dotenv dosyasına koyun. Bir sonraki tüm eller toplantınızda uyarıcı bir örnek olmayın.
Adım 3: Araç yüzey alanını test edin
- Claude'dan açık sorunları listelemesini, belirli bir dosyayı okumasını veya bir dal oluşturmasını isteyin. Açıkça izin vermediğiniz hiçbir şeyi yapamayacağını doğrulayın.
- Yalnızca temel komutları akıl sağlığı kontrolünden geçirdikten sonra create_pull_request'i etkinleştirmelisiniz.
Adım 4: Claude'un bir PR önermesine ve açmasına izin verin
- İstem örneği: "repo org/app-frontend'de, feat/dark-toggle adlı yeni bir dal oluşturun, SettingsPanel.tsx'de karanlık mod için bir ayar geçişi uygulayın, testleri güncelleyin ve QA için bir kontrol listesiyle bir PR açın."
- Sunucu şunları düzenler: depo durumunu okur, değişiklikler yazar (yerel dosya araçlarını yapılandırdıysanız), bir dal gönderir, şablonunuzla bir PR açar ve bir özet yayınlar.
Gerçek konuşma: Gerçekten ihtiyacınız olan koruma rayları
- Salt okunur kuru çalıştırmalar: Claude'un yazma erişiminden önce bir birleşik fark (git diff) üretmesini sağlayın. Gözünüzle inceledikten sonra birleştirin.
- Şablonlu PR gövdeleri: Risk notları, test planları ve dağıtım adımları ekleyin. Botun şablonu tamamlamasını sağlayın; insanların incelemesini sağlayın.
- Etiketleme kuralları: İşleri bulunabilir ve dürüst tutmak için ai-generated ve needs-tests gibi etiketleri otomatik olarak uygulayın.
- Dal adlandırma: Dal koruma kurallarıyla bir ön ek (ai/ veya bot/) gerektirin. Robotların da üniformaya ihtiyacı var.
Anekdot zamanı: Bir yapay zekadan "kimlik doğrulama hatasını düzeltmesini" istedim. Kimlik doğrulamayı kaldırarak "düzeltti". Verimlilik için harika! Kelimenin tam anlamıyla başka her şey için berbat. Kapsamları dar, istemleri belirli ve CI testlerini acımasız tutun.
Sıfırdan PR'a: Gerçekçi bir uçtan uca senaryo
Senaryo: Bir React projesinde kararsız geri tepme testini düzeltin
- Bir sorun açıyorsunuz: "Geri tepme util: CI'da 200 ms sınırında pul pul dökülme." ai-pr etiketini eklersiniz.
- İş akışı tetiklenir. debounce.ts ve ilgili testleri arar.
- Claude bir fark önerir: jest.useFakeTimers ile zamanlayıcıları ayarlar, iddialarda bir kenar boşluğu ekler, belgeleri günceller.
- Bot şunlarla bir PR açar: başlık, özet, gerekçe, test planı ve risk derecelendirmesi.
- Farkı incelersiniz, geri itersiniz: "delay=0 olduğunda uç durum."
- @claude delay=0'ı anında temizleme ile ele alın; test ekleyin diye yorum yapıyorsunuz. İş akışı yeniden çalışır, bir taahhüt gönderir.
- CI geçer. Ezersiniz ve birleştirirsiniz. Bir yerde, pul pul dökülen bir test "amca" diye ağlar.
İyi istemler nasıl görünür (ve nelerden kaçınılmalı)
- Harika: "SettingsPanel.tsx'e bir karanlık mod geçişi ekleyin; localStorage'da kalıcı hale getirin; SettingsPanel.test.tsx'i güncelleyin; ESLint kurallarımıza uyun; yalnızca /src/ui/ ve /src/utils/'i değiştirin; maksimum 250 satır."
- Vasat: "Karanlık modu uygulayın."
Güvenli hale getirin: Güvenlik ve uyumluluk hızlı kontrolü
- Belirteç kapsamları: Yalnızca gerekliyse repo:contents write kullanın; PR oluşturma için pull_request write'ı tercih edin.
- Depo izin verilenler listesi: Botu tek bir depo veya kuruluşla kilitleyin.
- Günlüğe kaydetme: Botun eylemlerini ve istemlerini (sırlar hariç) günlüğe kaydettiğinden emin olun. Dockerfile'ınızı "iyileştirdiğinde" kanıtlara ihtiyacınız olacak.
- Dal korumaları: ai/* dalları için iki insan onayını gerektirin.
Sorun giderme: Bot botlanmadığında
- Dallar gönderemiyor: contents: write için Actions izinlerini ve belirtecinizin depo yazma erişimine sahip olduğunu kontrol edin.
- Boş PR'lar açıyor: Bağlam oluşturucunuz ona doğru dosyaları vermiyor. Dosya seçimi mantığınızı sıkılaştırın.
- Büyük depolarda zaman aşımına uğruyor: Bağlamı değiştirilen yollarla veya bir manifestoyla sınırlayın. AI, tıpkı geri kalanımız gibi 10 GB'lık monorepolarda hazımsızlık yaşıyor.
- PR şablonunuzu görmezden geliyor: Şablonun .github/pull_request_template.md'de olduğunu veya depo ayarlarınızda bağlantılı olduğunu onaylayın.
Hangi yol ne zaman kullanılır
- Her şey GitHub'da gerçekleşirken, sorunlardan veya yorumlardan PR'ları otomatik olarak oluşturmanın hafif bir yolunu istiyorsanız, GitHub Actions'ı kullanın.
- Claude'un yerel ortamınızda veya çok özel kontrollerle birden fazla araçta çalışmasını istiyorsanız MCP'yi kullanın.
Belirtmekte fayda var: İş akışında hızlı bir akıl sağlığı kontrolü yapmak veya sağlam bir başlangıç istemi oluşturmak isterseniz, Sider.AI PR şablonları ve koruma rayı istemleri taslağı hazırlamanıza ve ardından gerçek depo parçacıklarıyla bunları yinelemenize yardımcı olabilir. Gerçekten kod yazan bir fikir sahibi editöre sahip olmak gibi. Ve masa sandalyenizi çalmaz. Kopyalamak isteyeceğiniz yaygın modeller
- AI PR etiketleri ve CODEOWNERS: Robotlarla tartışmaktan hoşlanan bir inceleme grubuna ai/* PR'larını yönlendirin.
- Adım adım taahhütler: Claude'dan "işler" adlı tek bir mega taahhüt yerine, net mesajlarla küçük, atomik taahhütler oluşturmasını isteyin.
- Test öncelikli modu: İş akışının önce testler oluşturmasını, CI'yı çalıştırmasını ve ardından uygulama oluşturmasını sağlayın. Daha yavaş. Daha iyi.
- Birleştirme sonrası işler: Belgeler, özellik işaretleri veya temizleme için otomatik olarak bir takip sorunu açmak için bir iş akışı ekleyin.
Hızlı bir rekabetçi içgüdü kontrolü
- Bazı kişiler diğer LLM'leri benzer GitHub akışlarına bağlıyor. Çalışıyorlar - ancak Claude Code'un kod muhakemesi ve "Emin değilim" deme isteği size saatlerce tahmin ve kontrol tasarrufu sağlayabilir. GitHub Actions entegrasyonu, incelemelerin doğal olarak gerçekleştiği yerde tutar ve MCP yolu güçlü kullanıcılar için esnektir.
10 dakikalık kurulum kontrol listesi
- Bir yol seçin: GitHub Actions (daha hızlı) veya MCP (daha fazla kontrol).
- Minimum kapsamlarla belirtecinizi oluşturun.
- İş akışını ekleyin veya MCP sunucusunu yapılandırın.
- Sıkı bir bağlam oluşturucu oluşturun: dosya listeleri, sınırları ve kuralları.
- Dal korumaları ve etiketleri ekleyin.
- Önce küçük bir değişiklik üzerinde test edin. Birleştirin. Kutlayın. PM'nize "iş hacmini ölçeklendirdiğinizi" söyleyin.
Elde tutulacak hızlı referanslar
- Claude Code GitHub Actions belgeleri (modeller, tetikleyiciler, örnekler).
- Entegrasyon ve en iyi uygulamalara ilişkin pratik kılavuz.
- Video izlenecek yol: Uçtan uca AI tarafından oluşturulan PR'lar.
- Ayrıntılı, izinli erişim için GitHub MCP sunucusu.
- İlham için MCP sunucuları dizini ve örnekleri.
Stern'in özeti
Claude Code ile PR'ları otomatikleştirmek mühendislik ekibinizin yerini almayacak. Mühendislik ekibinizin en sevmediği işlerin yerini alacak. Dar kapsamlarla, net istemlerle ve katı incelemelerle başlayın. Siz düşünmeyle ilgilenirken, botun iskeleyle ilgilenmesine izin verin. Ardından, sonunda uygulamanın bant ve hayallerle bir arada tuttuğunu bildiğiniz için kaçındığınız utils2.ts dosyasını silmek gibi eğlenceli şeylere geri dönün.
Şimdi gidin ve gelecekteki kendinizi biraz daha az huysuz yapın. Ve bot kontrolden çıkarsa? Geri Al düğmesinin nerede yaşadığını biliyorsunuz.
SSS
S1:Claude Code kendi başına çekme istekleri açabilir mi?
Evet. GitHub Actions veya bir MCP kurulumu ile Claude Code bir dal oluşturabilir, değişiklikler gönderebilir ve bir özet ve kontrol listesiyle bir çekme isteği açabilir. İzinleri sıkı tutun ve güvenliğinizi kaldırarak "optimize" etmemesi için insan incelemesi gerektirin.
S2:GitHub'ı Claude Code'a bağlamanın en güvenli yolu nedir?
Minimum kapsamlı belirteçler, depo izin verilenler listeleri ve dal korumaları kullanın. Actions veya MCP ile gitseniz de, kuru çalıştırmaları etkinleştirin ve AI tarafından oluşturulan herhangi bir çekme isteğini birleştirmeden önce testlerin geçmesini gerektirin.
S3:AI PR'larının tüm monorepoma dokunmasını nasıl durdururum?
Bağlamı izin verilen dizinler ve bir dosya manifestosu ile kapsamlandırın ve çalıştırma başına dosya sayısını sınırlayın. İyi istemler de yardımcı olur - yollar ve boyut sınırları hakkında belirli olun.
S4:AI çekme isteklerim neden boş veya düşük kaliteli?
Bağlam oluşturucunuz Claude'a yanlış dosyaları veya çok az ayrıntı veriyor olabilir. Net hedefler, kısıtlamalar ve test beklentileri sağlayın ve iki geçişli bir akışı düşünün: önce testler oluşturun, ardından uygulama.
S5:Claude Code için GitHub Actions mı yoksa MCP mi kullanmalıyım?
PR'lar ve incelemeler için hızlı, depo yerel otomasyonu istiyorsanız, GitHub Actions'ı kullanın. Yerel kontrole, özel araçlara veya ince ayarlı izinlere ihtiyacınız varsa, MCP size biraz daha fazla kurulumla daha fazla güç verir.