DevOps

VS Code Nisan Sürümleri: Copilot’ta Neler Değişti?

Geçen hafta sabah kahvemi içerken VS Code’umu açtım, alışkanlık işte, önce update notlarına bir göz atayım dedim. Bir baktım, Microsoft sessiz sedasız haftalık stable sürüme geçmiş; (en azından benim deneyimim böyle). Artık aylık değil, her hafta yeni bir build düşüyor. v1.116’dan v1.119’a kadar Nişan ve Mayıs başında çıkan dört sürümün toplam değişiklik listesi… uzun. Hem de baya uzun.

Bu yazıda size kuru kuru changelog özeti çıkarmayacağım. Onun için zaten resmî blog var. Ben size sahada ne işe yaradı, ne yaramadı, hangı feature gerçekten “wow” dedirtti önü anlatacağım; Logosoft’ta birkaç müşteri projesinde bunları test etme fırsatım öldü, bazı şeyler beklediğimden iyi çıktı, bazıları işe… Tahmin eder mısınız? eh işte.

Kısa bir not düşeyim buraya.

Haftalık Sürüm Modeline Geçiş: İyi mi Kötü mü?

Açık konuşayım, ilk duyduğumda kaşlarım biraz çatıldı (bizzat test ettim). Çünkü kurumsal ortamlarda haftalık sürüm demek çoğu zaman haftalık test demek oluyor; bizim bir bankacılık müşterimizde dev makineler hâlâ controlled rollout ile güncelleniyor (IT ekibi her sürümü tek tek tarayıp onaylıyor), o yüzden bu tempo süreçleri zorlar mı diye düşündüm (en azından benim deneyimim böyle)

Küçük bir detay: Ama pratikte gördüğüm şu: değişiklikler artık daha küçük parçalara bölünüyor. Bir aylık kocaman bir patch yerine, haftada birkaç odaklı iyileştirme geliyor; bu da regresyon riskini düşürüyor aslında. Hmm, bir düşününce Microsoft bunu zaten Edge tarayıcısında yıllardır yapıyor, aynı disiplini VS Code’a getirmeleri mantıklı gıbı duruyor.

Durun, bir saniye.

Evet.

Eğer ekibinizde 50+ developer varsa, “auto-update” yerine “controlled rollout” politikasını ciddiye almanın tam zamanı. Haftalık sürümle birlikte sürpriz bug’lar da haftalık gelebilir.

Anlamsal Arama: Workspace Sınırlarını Aşan Copilot

İşte beni en çok heyecanlandıran kısım buydu. Semantic indexing artık tüm workspace’lerde çalışıyor; yanı Copilot’a “ödeme akışındaki retry mekanizması nerede” diye sorduğumda sadece açık dosyaları değil, tüm projeyi anlamsal olarak tarıyor. Sadece anahtar kelime eşleşmesi değil, niyetinizi anlıyor.

Bunun yanında bir de githubTextSearch diye yeni bir agent tool gelmiş. Bu da grep tarzı sorguları GitHub repo’larınız ve organizasyonlarınızda çalıştırıyor; geçen Çarşamba bir telekom müşterisinde yaşadığım olayda 14 farklı microservice repo’su vardı ve her birinde “TODO: revisit before prod” gıbı notlar bırakılmıştı. Eskiden bunları bulmak için ya GitHub UI’da tek tek arıyorduk ya da clone edip ripgrep çekiyorduk, şimdi tek prompt ile çıkıyor.

Dürüst olmak gerekirse, Türkiye’deki kurumsal müşteriler açısından düşünürsek — özellikle çok sayıda repo ile çalışan finans ve telekom şirketleri için — bu özellik baya değerli. Çünkü buradaki ekipler genelde monorepo yerine çok sayıda ayrık repo tercih ediyor (kurumsal yapı, ayrı ekipler, ayrı CI hatları), dolayısıyla cross-repo arama ihtiyacı doğal olarak ortaya çıkıyor.

Token Maliyeti Tarafı

Bir de işin parasal boyutu var. Smart prompt caching, deferred tool loading. Yeni agentic tool’lar sayesinde her istekte daha az token tüketiliyor — Microsoft’un kendi açıklaması bu yönde. Pratikte ben aynı görevlerde %15-20 civarı bir düşüş gözlemledim; enterprise plan üzerinden ayda ortalama 50-60 dolar fatura gelen bir takım için bu, yılda yüz dolarları bulan bir tasarruf demek oluyor. Küçük rakam değil yanı.

Peki neden? Bu konuyla ilgili Kubernetes v1.36 Memory QoS: Katmanlı Bellek Koruması Geldi yazımıza da göz atmanızı tavsiye ederim.

/chronicle: Kendi Geçmişinizi Sorgulamak (Deneysel)

Şöyle söyleyeyim, Bu kabiliyetin tam bir “neden daha önce yapılmamıştı” hissi veriyor. Chronicle, sizin Copilot ile yaptığınız tüm chat etkileşimlerini lokal bir veritabanında tutuyor; sonra /chronicle komutuyla geçmişe sorabiliyorsunuz: “Geçen ay JWT refresh token’ı için ne yapmıştım?”, “Hangı PR’da bu pattern’ı kullandık?” gıbı sorularla geri dönüyorsunuz.

Açmak için ayarlardan etkinleştirmeniz gerekiyor: github.copilot.chat.localIndex.enabled. Hâlâ experimental ama bende bir haftadır açık ve şu ana kadar sorun çıkmadı. Yalnız dikkat — veriler lokal tutuluyor; yanı makineyi değiştirirseniz geçmişiniz gidiyor. Bunun cloud sync’i de gelir umarım, gerçi privacy açısından lokal kalması belki de daha iyi. Bu konuyla ilgili Microsoft Agent Framework’te Durable Workflow’lar: Saha yazımıza da göz atmanızı tavsiye ederim.

Peki neden?

💡 Bilgi: Chronicle veritabanı varsayılan olarak şifresiz tutuluyor. Eğer makinanızda hassas müşteri kodu üzerinde çalışıyorsanız, en azından disk şifrelemesi (BitLocker / FileVault) açık olsun.

Bring Your Own Key: Enterprise İçin Oyun Değiştirici

Bu değişiklik changelog’da küçük bir cümle gıbı görünüyor ama etkisi büyük olabilir. BYOK desteği artık Copilot Business ve Enterprise için de açıldı; OpenRouter, Microsoft Foundry, Google, Anthropıc, OpenAI — hangisini istiyorsanız kendi API key’ınızı bağlayıp VS Code chat’inde kullanabiliyorsunuz. Hatta Ollama veya Foundry Local ile bayağı lokal model bile çalıştırabilirsiniz.

Şimdi neden önemli? Çünkü Türkiye’deki bazı bankalar. Devlet kuruluşları “verim Microsoft’un default modeline gitmesin, kendi Azure OpenAI tenant’ımdan geçsin” diyor. Veri ikametgâhı, KVKK, sektörel regülasyonlar… Eskiden bu mümkün değildi; ya Copilot kullanıyordunuz ya da kullanmıyordunuz. Şimdi işe “Copilot’u kullan ama kendi modelinle” diyebiliyorsunuz.

Admin tarafında Bring Your Own Language Model Key diye yeni bir policy var GitHub.com’da; yöneticiler bunu kapatabiliyor da tabi ki bazı şirketler “developer’lar kafalarına göre OpenRouter key’i bağlamasın, hep merkezî olsun” diyor. Bu kontrol şart aslında. Bu konuyla ilgili GitHub MCP Server’da Secret Scanning GA: Sahadan Notlar yazımıza da göz atmanızı tavsiye ederim.

Hangı Senaryoda Hangı Yaklaşım?

Senaryo Önerilen Yaklaşım
Küçük ekip / Startup Default Copilot — basitlik kazanır
Regülasyonlu sektör (banka, sigorta) BYOK + Azure OpenAI kendi tenant
Hassas IP, yüksek güvenlik Ollama / Foundry Local — tamamen offline
Maliyeti aşağı çekmek isteyenler OpenRouter ile model seçimi (Claude Haiku gıbı)

Agent Deneyimi: Inline Diff’ler ve Browser Erişimi

Şöyle söyleyeyim, Chat thread’inde kod değişiklikleri artık doğrudan diff olarak görünüyor. Yanı Copilot “şunu değiştirdim” demek yerine satır satır +. — işaretleriyle gösteriyor; ufak — en azından ben öyle düşünüyorum — bir detay gıbı duruyor ama günlük akışta ciddi fark yaratıyor. E peki, sonuç ne öldü? Eskiden agent’a güvenmek için “dür, ne yaptın bakayım” deyip dosyayı açmak gerekiyordu; şimdi orada, gözünüzün önünde (ciddiyim) Daha fazla bilgi için mssql-python’da Apache Arrow Desteği: Sahadan Notlar yazımıza bakabilirsiniz.

Bir de Integrated Browser var. Agent’a tarayıcınızdaki bir tab’ı paylaşabiliyorsunuz; agent o sayfayı okuyor, etkileşime giriyor. Değişiklikleri canlı doğruluyor. Geçen hafta bir form (söylemesi ayıp) validation bug’ı için denedim: ben “şu URL’deki form’u dene, neyse hatayı söyle” dedim, agent gerçekten gitti formu doldurdu, hatayı yakaladı ve sonra fix önerdi. Sihir değil tabi ki ama sihir gıbı hissettiriyor doğrusu.

Bak şimdi, Bazı yerlerde insan şaşırıyor işte.

Terminal entegrasyonu da ilginç: Agent artık açık herhangi bir terminal’e read/write yapabiliyor; REPL’lerde ve etkileşimli script’lerde bile çalışıyor. Burada dikkat — bu ciddi bir güç. Hata yapan bir agent’ın production veritabanına bağlı terminal’de DROP TABLE çalıştırması teorik olarak mümkün; ben bunu test ortamında deniyorum sadece, prod terminal’de agent açık değil (bizzat test ettim). Siz de öyle yapın. Bu konuyla ilgili Kubernetes v1.36 Declarative Validation: GA’ya Ulaştı yazımıza da göz atmanızı tavsiye ederim.

“Agent terminal’e yazabiliyor” cümlesi kulağa zararsız geliyor. Ama production credential’ları ile bağlı bir terminal söz konusuysa bu cümle bambaşka bir anlam kazanıyor. Politika yazın, eğitim verin.

Copilot CLI Oturumlarını Uzaktan Yönetmek

Bu özellik beni biraz şaşırttı açıkçası. VS Code’da başlattığınız bir Copilot CLI oturumunu GitHub.com’dan veya mobil uygulamadan izleyip yönlendirebiliyorsunuz; şöyle çalışıyor:

  1. Ayarlardan github.copilot.chat.cli.remote.enabled aktif edin
  2. CLI oturumunda /remote on yazın
  3. GitHub.com veya mobil app’ten oturuma müdahil olun (bu kritik)

Doğrusu, Peki neden? Senaryo basit aslında: uzun süren bir refactor başlattınız ve öğle yemeğine çıktınız; telefonunuzdan agent’ın ilerlemesini takıp edip “şu kısmı atla” diyebiliyorsunuz. Bu daha çok background agent kullanan büyük takımlar için anlamlı oluyor; solo developer’sanız belki çok ihtiyacınız olmaz ama büyük ekiplerde long-running task’lar için faydalı.

Neyse uzatmayayım; ilgili olarak GitHub Copilot CLI: Interactive vs Non-Interactive Mod Farkı yazısında CLI’nın temel modlarına değinmiştim — remote özelliği aslında bunun üstüne yeni bir katman ekliyor.

Agent Customization: Doğal Dilden Custom Agent

Bence, “Şöyle bir agent istiyorum: TypeScript dosyalarında çalışsın, Jest testlerini her değişiklikte çalıştırsın, ESLint kurallarına bağlı kalsın” gıbı bir cümle yazıyorsunuz; Copilot da size bunun için custom agent, skill ve instruction taslağını üretiyor. Sıfırdan YAML yazmaktan kurtarıyor sızı.

Sorduğu anda her şeyi çözmüyor tabi ki ama başlangıcı baya toparlıyor.

Ürettiği şablon mükemmel mi? Hayır.

Ama %70-80’lık bir başlangıç noktası veriyor,

gerisi sizin elinizde.

Visual Studio tarafında benzer bir hareket vardı;

Visual Studio 2026 Nişan: Copilot Agent’ları Devreye Girdi
yazısında ondan bahsetmiştim.

Microsoft ekosisteminin tamamı agent customization’a doğru evriliyor anlaşılan.

Tam da öyle.

Pratik İlk Adımlar

Kısaca:
  1. Sürümü yükseltin
    VS Code’unuzu güncelleyin

    — en az v1.
    119 olduğundan emin olun
  2. “Semantic indexing’i tetikleyin
    — büyük workspace’lerde ilk indexleme biraz vakit alıyor,
    sabırlı olun”
  3. “Chronicle’ı deneyin”
    ama lokal disk şifrelemenizi kontrol edin önce
    — ciddi fark yaratıyor
  4. “BYOK kararı verin”:
    Default mı,
    Azure OpenAI mi,
    Local mi?
  5. “Agent terminal politikası belirleyin”
    — hangı terminal’lere agent erişebilir,
    hangilerine erişemez?

Anlatırken eksik kalan yerler var mı?

Dürüst olayım,
her şey güllük gülistanlık değil tabi.
Birkaç eleştirim var.

Birinçisi,
browser tab paylaşımı şu an sadece Chromium tabanlı tarayıcılarda düzgün çalışıyor.
Safari tarafında benim gıbı macOS kullananlar için bazı tab türleri direkt görünmüyor.
Bu hayal kırıklığı öldü açıkçası.

İkincisi,
Chronicle’ın experimental etiketi kalıcı gıbı duruyor.
Microsoft “experimental” dediğinde bazen 6 ay,
bazen 2 yıl sürüyor o etiket.
Production-ready bir özellik gıbı davranmayın yanı.

Üçüncüsü,
BYOK admin policy’si granular değil.
Yanı “OpenRouter’a izin ver ama Anthropıc’e verme” gıbı sektörel kontroller yok.
Hep ya da hiç.
Türkiye’deki regülasyonlu müşteriler için bu net eksiklik.
Umarım sonraki sürümlerde fine-grained kontrol gelir.

İlgili agent ve güvenlik konularında
Microsoft Agent Framework:.NET’te Akıllı Ajan Devri
ve
Copilot Code Review Faturalandırması: Actions Dakikası Devri
yazılarına da bakmanızı tavsiye ederim — bu sürümleri büyük resimde değerlendirmek için yardımcı ölür.

Peki siz ne dersiniz?

Sıkça Sorulan Sorular

Bu sürümler Copilot Free kullanıcılarına da geliyor mu?

Bi saniye — Çoğu özellik için evet (en azından benim deneyimim böyle). BYOK zaten Free, Pro ve Pro+ kullanıcılarında vardı; bu sürümle Business ve Enterprise tarafına da açıldı. Semantic search ve Chronicle gıbı şeyler tüm planlarda kullanılabiliyor. Ama bazı agent debug log’ları ve enterprise policy ayarları, aslında bekleneceği üzere, sadece kurumsal planlarda kalıyor.

Semantic indexing büyük repo’larda performansı düşürür mü?

İlk indexleme sırasında CPU fena yükseliyebiliyor. Tecrübeme göre 1GB civarı bir codebase’de yaklaşık 4-5 dakika sürüyor. Sonrası incremental olduğu için sorun çıkmıyor. Eğer 16GB altı RAM ile çalışıyorsanız, bence ilk indexleme’yi öğle arasında tetiklemeniz daha mantıklı — makinanızı gereksiz yormasın (ciddiyim)

BYOK kullanırken Microsoft tarafına hâlâ veri gidiyor mu?

Kendi deneyimimden konuşuyorum, Sözleşmeye göre prompt içeriği seçtiğiniz model sağlayıcısına gidiyor — yanı mesela Anthropıc seçtiyseniz doğrudan Anthropıc’e (şaşırtıcı ama gerçek). Ama VS Code telemetrisi ve kullanım metrikleri Microsoft’a akmaya devam ediyor. Açıkçası KVKK uyumluluğu için müşterilerinize bunu net bir şekilde belirtmeniz gerekiyor, atlamamanızı öneririm.

Chronicle veritabanı tam olarak nerede tutuluyor?

Lokal kullanıcı dizininizde, hani VS Code’un workspace storage alanında. Konum işletim sistemine göre değişiyor — macOS’ta ~/Library/Application Support/Code, Windows’ta %APPDATA%\Code. SQLite tabanlı bir DB. İsterseniz manuel silebilirsiniz, ama o zaman geçmiş aramalarınız da gidiyor tabi (bizzat test ettim)

Agent’ın açık terminal’lere erişimini nasıl kısıtlarım?

Şu an maalesef workspace bazında bir ayar yok; agent açık herhangi bir foreground terminal’e erişebiliyor. Bence en sağlıklı çözüm şu: prod credential’ları olan terminal’leri ayrı bir VS Code window’da tutun ve o pencerede Copilot Chat’i kapatın. Yanı basit bir izolasyon ama gerçekten işe yarıyor.

Kaynaklar ve İleri Okuma

GitHub Changelog Resmî Sayfası

Visual Studio Code Release Notes

GitHub Copilot Resmî Dokümantasyonu

Aşkın KILIÇ

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.

← Onceki Yazi
Microsoft Agent Framework'te Durable Workflow'lar: Saha

Yorum Yaz

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İçindekiler
← Microsoft Agent Framework̵...