Copilot Code Review’a AGENTS.md Desteği: Ne İşe Yarayacak?
Eh, Şöyle başlayayım: GitHub’ın Copilot tarafında bir süredir kafamı kurcalayan bir gerilim vardı. Bir yanda “Copilot kodumu incelesin” diyen ekipler, öbür yanda “ya bu Copilot bizim repo’nun konvansiyonlarını bilmiyor, ben buna nasıl güveneyim?” diye homurdananlar. Yanı review geliyor ama bağlam eksik kalıyor. Sanki dışarıdan biri gelmiş, ilk gün ilk PR’ı açıp yorum bırakıyor.
Geçtiğimiz günlerde GitHub bu işe küçük görünen. Bence baya iş gören bir çözüm getirdi: Copilot code review artık repository kökündeki AGENTS.md dosyasını okuyor. Bir de UI tarafında draft PR’lar için “Request” butonu daha pratik hâle gelmiş, timeline’daki Copilot olayları da toparlanmış. Üçü birden GA (genel kullanıma açık) olarak duyuruldu.
Kulağa basit geliyor değil mi? Aslında değil. Bunu Türkiye’deki kurumsal müşterilerimde gördüklerimle yan yana koyunca hikâye biraz daha katmanlı oluyor, hatta bazen insanın aklı “tamam da neden şimdi?” diye gidiyor. Önü da anlatacağım. Önce teknik özüne girelim.
AGENTS.md aslında ne demek, neden şimdi önemli?
AGENTS.md, son bir-iki yıldır kod ajanları dünyasında sessiz sedasız dolaşan bir konvansiyon. Kısaca şu: repository’nın köküne koyduğunuz markdown dosyası. İçine “bu repo’da nasıl kod yazılır, hangi pattern’lar tercih edilir, neyden kaçınılır, hangi kütüphane standarttır” gibi notlar düşüyorsunuz. Yeni gelen geliştiriciye verdiğiniz onboarding notu gibi düşünün; ama hedef kitle insan değil, ajan.
Copilot code review bu güncellemeyle birlikte repo kökündeki AGENTS.md’yi otomatik okuyor ve review feedback’ını buradaki kurallara göre şekillendiriyor. Yanı artık her PR’a tek tek “şu pattern’ı kullan”, “şu naming convention’ı uygula” diye prompt yazmanız gerekmiyor. Sız hiç denediniz mi? Bir kere dosyaya yazıyorsunuz, sonra sistem önü taşıyor — itiraf edeyim, beklentimin üstündeydi —
“En kötü code review, repository’nın ruhunu bilmeyen incelemecidendir. Copilot şimdiye kadar tam da bu durumdaydı. AGENTS.md bunu bir nebze düzeltiyor — ama sihirli değnek değil.”
Peki içine ne yazıyoruz?
Hani, Sahada sık gördüğüm bir hata var: ekipler AGENTS.md’yi açıyor, içine roman döküyor. Olmuyor. Ajanın bağlam penceresi sınırlı; üstüne fazla genel talimat verince model neye bakacağını şaşırıyor. Ben şöyle bir yapı öneriyorum:
- Tech stack özeti — 2-3 cümle yeter. “Bu repo.NET 9 + EF Core + Azure SQL kullanıyor, frontend React 19.”
- Konvansiyonlar — naming, klasör yapısı, async pattern tercihleri (bence en önemlisi)
- Kaçınılacak şeyler — “Newtonsoft.Json kullanma, System.Text.Json kullan” gibi net yasaklar
- Test beklentileri — coverage hedefi, hangi katmanda mock kullanılır
- Güvenlik notları — secret yönetimi, log’a yazılmayacak alanlar
Kısa tutun. Bir A4 civarı. Ama doğru bir A4 olsun.
Bir dakika — bununla bitmedi.
Küçük bir örnek dosya
Bir örnek vereyim; tipik bir Azure Functions + Cosmos DB repository’si için AGENTS.md aşağı yukarı şöyle olabilir:
# AGENTS.md
## Stack
-.NET 9 isolated worker Azure Functions
- Cosmos DB (SQL API), partition key: /tenantId
- MediatR for command/query separation
## Conventions
- All public methods async, suffix with `Async`
- Use `record` for DTOs, `class` for entities
- Folder layout: Features/{FeatureName}/{Commands,Queries,Handlers}
## Avoid
- No `Task.Result` or `.Wait()` — always `await`
- Don't use Newtonsoft.Json; project standard is System.Text.Json
- No raw SQL in handlers, repository pattern only
## Security
- Never log PII (email, phone, TCKN)
- Secrets only via Azure Key Vault, not appsettings.json
## Testing
- Unit tests for handlers (xUnit + FluentAssertions)
- Integration tests with Cosmos DB Emulator
Bu dosya repo kökünde durduğu sürece Copilot code review bir PR’a baktığında “kardeşim burada .Result kullanmışsın, bu repo’da yasak” diyebiliyor. Bunu her seferinde prompt’ta tekrar etmeniz gerekmiyor.
UI tarafındaki iki küçük ama tatlı değişiklik
Draft PR’larda “Request” butonu
Bunu açık söyleyeyim: Draft PR’a Copilot review istemek zaten mümkündü. Ama her defasında reviewer picker’ı açıp “Copilot” diye aramak gerekiyordu. Üç tık yanı. İlk bakışta önemsiz dürüyor — ta ki günde 8-10 PR açan ekibe denk gelene kadar. Orada o üç tık ciddi sürtünmeye dönüşüyor.
Şimdi draft PR’da Copilot’un yanında doğrudan “Request” butonu çıkıyor. Tek tıkla iş bitiyor. Küçük UX dokunuşu ama ekip ölçeğinde toplam faydası hiç fena değil.
Timeline’da Copilot olaylarının toplulaştırılması
Bi saniye — Bu da uzun zamandır şikâyet edilen bir konuydu. Copilot review yaptıkça PR’ın Conversation sekmesi “Copilot started review”, “Copilot finished review”, “Copilot dismissed” gibi olaylarla dolup taşıyordu. Asıl yorumları bulmak için kaydırıp duruyordunuz; açık konuşayım yorucu oluyordu biraz. Şimdi bu olaylar tek bir collapsible bloğa toplanıyor. Bu konuyla ilgili copilot konusundaki yazımız yazımıza da göz atmanızı tavsiye ederim.
Tuhaf ama, Sadeleşmiş hali iyi dürüyor.
Açıkçası, Daha temiz görünüyor.
Türkiye’deki ekipler açısından ne anlama geliyor?
Şöyle söyleyeyim, Şimdi işin yerel boyutuna gelelim. Kurumsal müşterilerimde gördüğüm kadarıyla Türkiye’de Copilot code review benimsenmesi biraz çelişkili gidiyor. Bir tarafta “AI bizim koda dokunmasın, regülasyon var” diyen finans ve kamu ağırlıklı kurumlar var; öbür tarafta startup ve scale-up’lar var, onlar zaten Copilot’u her yere serpiştirmiş durumda.
AGENTS.md tam burada devreye giriyor. Kurumsal ekipler haklı olarak “Copilot bizim coding standard’larımızı bilmeden review yapamaz” diyordu. Şimdi standart bir AGENTS.md ile ekibin tüm konvansiyonlarını kayıt altına alıp Copilot’a sunabiliyorsunuz. Bence bu aynı zamanda compliance tarafına da iyi geliyor. Artık “AI rastgele yorum yapmıyor, bizim onayladığımız kurallar setine göre yapıyor” diyebiliyorsunuz (en azından benim deneyimim böyle)
Ve işler burada ilginçleşiyor.
Şunu fark ettim: Bir de şu var: Türkçe karakterler, lokalizasyon detayları ve Türkiye’ye özgü iş kuralları (TCKN doğrulama, IBAN formatı, KVKK gereği maskelenecek alanlar) gibi şeyleri AGENTS.md’ye yazınca Copilot review bunları da dikkate alabiliyor gibi davranıyor; en azından ben öyle gözlemledim diyeyim. Bunu küçümsememek lazım.
Copilot Autofix Azure DevOps’ta: Alert Yığını Bitiyor mu? yazımda da benzer bir noktaya değinmiştim — AI araçlarının kurumsal değer ürettiği yer genelde bağlamı doğru anladığı andır. Bu konuyla ilgili Outcome-Driven Learning: OpenEnv ve Foundry ile Kurumsal RL yazımıza da göz atmanızı tavsiye ederim.
Enterprise mi, küçük ekip mi? Karar matrisi
Bir şey dikkatimi çekti: “Biz 5 kişilik ekibiz, AGENTS.md koysak ne olur?” sorusunu sık alıyorum. Cevap düz değil ama tabloyla anlatmak kolaylaşıyor: Bu konuyla ilgili Agents League Hackathon 2026: Enterprise Agents Kategorisi Rehberi yazımıza da göz atmanızı tavsiye ederim.
| Senaryo | AGENTS.md öncelik | Ne kadar detay? |
|---|---|---|
| 5 kişilik startup, tek repo | Orta | Yarım sayfa, sadece “yasaklar” |
| 20-50 geliştirici, monorepo | Yüksek | 1 sayfa + alt klasörlerde ek dosyalar |
| Kurumsal, multi-repo, regülasyon | Kritik | Standart şablon, governance ekibi sahiplenir |
| Open source proje | Yüksek | Kullanıcı katkısı odaklı, örnekli |
Şunu söyleyeyim, Küçük ekiplerde asıl risk şu oluyor: AGENTS.md’yi yazıp sonra güncellemeyi unutmak. Repo evrildikçe dosya geri kalıyor; sonra Copilot eski kurallara göre review yapıyor. Geliştirici haklı olarak “burada ne olmuş?” diyor. Bu yüzden küçük ekiplere önerim basit: dosyayı kısa tutun ve gerçekten değişmeyen ilkeleri yazın. RDBMS’ten Cosmos DB’ye Geçiş: AI Asistanı Ne Kadar İşe Yarar? yazımızda bu konuya da değinmiştik.
Peki ilk gün ne yapmalı?
Eğer bugün denemeye karar verdiyseniz ben sıralamayı şöyle yapardım: Bu konuyla ilgili desteği ile ilgili önceki yazımız yazımıza da göz atmanızı tavsiye ederim.
- Repository köküne boş bir AGENTS.md oluşturun. Henüz hiçbir şey yazmadan commit etmeyin.
- Ekipten 2-3 senior geliştiriciyi 30 dakika toplayın. “Yeni gelen biri en sık hangi hatayı yapıyor?” diye sorun; cevaplar iskeleti verir.
- İlk versiyonu yazın ve yarım sayfayı geçmeyin.
- Bir test PR’ı açıp Copilot review isteyin.
- İki hafta sonra dosyayı revize edin.
- Neyin işe yaradığını ayıklayın.
- Neyin gürültü ürettiğini kırpın.
“`
</analysis>
Eksik bulduğum yanlar
</analysis>
Açık konuşayım: Her şey toz pembe değil.</html>
Birkaç sınırlı tarafı var bu güncellemenin.</html>
Birincisi, AGENTS.md sadece repository kökünden okunuyor.</html>
Monorepo kullananlar için bu biraz sıkıntı; frontend ve backend’in farklı konvansiyonları olabilir, hepsini tek dosyaya tıkıştırmak çirkin oluyor.</html>
İdeal olan, alt klasörlerde de AGENTS.md desteği olması.</html>
Umarım önümüzdeki sürümlerde gelir.
Öncesinde “üçüncü” paragraf yine kaotik şekilde devam ediyor.</html>
Ïkincisi, Copilot’un AGENTS.md’yi ne kadar “ciddiye aldığı” hâlâ deterministik değil.</html>
Yanı aynı kuralı 10 PR’ın 9’unda hatırlıyor, 1’inde unutuyor.</html>
Bu LLM’lerin doğası gereği normal ama “AGENTS.md koydum, artık her şey otomatik” beklentisine girmeyin.</html>
Hâlâ insan review’ı şart.
Üçücüsü; UI iyileştirmeleri güzel ama timeline collapse mantığı bazen aşırı sıkıştırıyor.</html>
Bir Copilot dismissed olayı kayboluyor, sonra “bu yorum nereye gitti?” diye arıyorsunuz.</html>
Bence bir genişletme tuşu daha belirgin olabilirdi.&alt/p>
X?
Sıkça Sorulan Sorular
AGENTS.md dosyam varsa Copilot code review için ayrıca bir şey ayarlamam gerekiyor mu?
Hayır, gerekmiyor. Copilot, repository kökündeki AGENTS.md’yi zaten otomatik olarak okuyor. Yanı ekstra bir ayar açmanıza, planınızı yükseltmenize ya da özel izin tanımlamanıza hiç gerek yok. Dosyayı koyup commit ettiğiniz an, sonraki review’larda hemen devreye giriyor.
AGENTS.md ile CONTRIBUTING.md arasındaki fark ne?
CONTRIBUTING.md aslında insanlar için yazılıyor — hani katkı sağlayan geliştiricilere yol gösteriyor, açıklayıcı bir dil kullanıyor. AGENTS.md işe AI ajanlarının rahatça parse edebileceği, net ve direktif bir dille yazılmalı. İkisi bir arada bulunabilir, dahası önerilen de bu zaten. Sonuçta CONTRIBUTING.md’yi okuyan insan, AGENTS.md’yi okuyan ajan.
Evet, doğru duydunuz.
Başka ajanlar için yazdığım AGENTS.md’yi Copilot da kullanır mı?
Evet, kullanır. AGENTS.md formatı belirli bir araca özgü değil; markdown tabanlı genel bir konvansiyon bu. Mesela Cursor ya da Aider için yazdığınız dosyayı Copilot da okuyabiliyor. Ama şunu söyleyeyim: farklı ajanlar farklı bölümlere farklı ağırlık verebiliyor, o yüzden çıktıları ara sıra gözlemleyip dosyayı sadeleştirmek faydalı oluyor.
AGENTS.md’ye yazdığım her kural review’da uygulanacak mı?
Açıkçası, garanti veremem. LLM tabanlı bir sistem olduğu için Copilot bazen bazı kuralları gözden kaçırabiliyor — özellikle dosya çok uzunsa bu daha sık oluyor. Bence kritik kuralları kısa, net ve dosyanın üst kısmında tutmak en mantıklısı. Bir de tecrübeme göre “yapma” listesi, “yap” listesinden genelde çok daha etkili oluyor.
Draft PR’da Copilot review istemek ücretlendirmemi etkiler mi?
Şimdi, copilot code review zaten planınıza dahil, yanı draft PR olması ekstra bir ücret çıkarmıyor. Ama şunu bilmekte fayda var: her review bir kullanım sayılıyor. Dolayısıyla taslakta defalarca review istemek toplam tüketimi artırabilir. Bu yüzden draft aşamasında önce ciddi bir self-review yapıp ondan sonra Copilot’a göndermek hem daha verimli hem de daha temiz bir feedback üretiyor bence.
Kaynaklar ve İleri Okuma
Araya gireyim: GitHub Changelog: Copilot code review AGENTS.md support and UI improvements
Bu içerik işinize yaradı mı?
Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.











Yorum gönder