azure-functions-skills: Azure Functions İçin Yapay Zekâ Çalışma Alanı
Şunu açık söyleyeyim: AI ajanları artık kod yazıyor, ama her zaman doğru kodu yazmıyor. Hele konu Azure Functions olunca, iş biraz daha hassaslaşıyor. Çünkü burada sadece “çalışan” bir fonksiyon yetmiyor; güvenli, ölçeklenebilir, kimlik tabanlı erişim kullanan. Deploy edildiğinde sürpriz çıkarmayan bir yapı lazım. Hani ne farkı var diyorsunuz, değil mi? İşin aslı şu ki, general-purpose bir ajan bazen size hızlı bir taslak veriyor ama o taslak production kapısında tökezliyor.
Microsoft’un duyurduğu azure-functions-skills tam da bu boşluğu kapatmaya çalışıyor. Ben bunu ilk okuduğumda aklıma direkt şu geldi: “Nihayet ajanlara Azure Functions’ı usulünce öğreten bir katman geliyor.” Çünkü bugüne kadar Copilot ya da başka bir kod ajanı ile fonksiyon ürettirdiğinizde, özellikle eski model alışkanlıklarını taşıyan çıktılar görüyorduk (ilk duyduğumda inanamadım). Hani olur ya, compile eder ama içi delik deşik kalır… işte tam öyle.
Geçen ay İstanbul’da bir finans müşterisinde buna benzer bir tablo yaşadık. Ekip Copilot ile birkaç function scaffold etmişti; kod güzeldi,. Connection string doğrudan app settings içine gömülmüş, managed identity hiç düşünülmemişti (kendi tecrübem). Sonra biz işi toparlarken klasik soru geldi: “Bunu niye en başta doğru kurmadık?” Cevap basit:. Genel amaçlı ajanlar bağlamı bilmiyor. azure-functions-skills burada bayağı işe yarıyor.
Neden böyle bir şeye ihtiyaç vardı?
Azure Functions tarafında son iki yılda çok şey değişti. Flex Consumption varsayılanları, yeni binding şekilleri, serverless agents runtime, Go desteği, MCP template servisleri… Liste uzayıp gidiyor. Ama ajanların çoğu hâlâ sanki 2022’deymişiz gibi davranıyor. Bu biraz eski haritayla şehir içinde navigasyon yapmaya benziyor; yol var sanıyorsunuz ama o yol tek yön olmuş bile.
Peki neden?
Ben AZ-104. AZ-305 hazırlıklarında da bunu çok gördüm: doküman güncel olsa bile ekiplerin zihnindeki referans modeli eski kalabiliyor. Kurumsal tarafta sorun daha büyük oluyor çünkü orada “bir şey çalışsın yeter” denmiyor; güvenlik ekibi var, platform ekibi var, compliance baskısı var. Bir startup için tolerans edilen kısa yol, enterprise ortamda doğrudan kırmızı bayrak oluyor.
Ha bu arada küçük ekiplerde durum farklı mı? Evet. Küçük ekipler hız istiyor ve haklılar. Ama büyüdükçe teknik borç kartopu gibi büyüyor. azure-functions-skills’in güzel tarafı burada devreye giriyor: ajana sadece nasıl kod yazacağını değil, nasıl doğru pattern seçeceğini de anlatıyor.
azure-functions-skills ne getiriyor?
Kısaca söyleyeyim: tek komutla başlayan bir çalışma alanı sağlıyor. İçinde skill set’ler var; setup, create, deploy, diagnostics gibi görev odaklı playbook’lar bulunuyor. Bir de agent definition kısmı var ki bu önemli — istekleri doğru skill’e yönlendiriyor. Iş bitince sonraki adımı öneriyor. Yanı ajan biraz daha disiplinli hâle geliyor.
Beni en çok ilgilendiren kısım MCP server konfigürasyonu ve hook mekanizması öldü. Çünkü gerçek hayatta asıl farkı bunlar yaratıyor. Sadece prompt’a birkaç satır eklemek yetmiyor; ajanın davranışını sistematik biçimde şekillendirmek gerekiyor. Aksi hâlde her oturumda aynı soruları tekrar eden bir yardımcıya dönüyor.
Evet, doğru duydunuz.
Bir de doctor var ki açık konuşayım bayağı hoşuma gitti. Deploy öncesi kontrol yapan HTML raporu üretiyor ve CI zincirine takılabiliyor. 2023’te Ankara’daki bir lojistik firmasında benzer mantığı kendi script’lerimizle kurmuştuk; hata ayıklama süresi ciddi düşmüştü. Bakım yükü artmıştı. Burada işe paketlenmiş geliyor olması rahatlatıcı.
| Bileşen | Ne işe yarıyor? | Pratik etkisi |
|---|---|---|
| Skills | Görev bazlı rehberler | Ajan daha tutarlı ilerliyor |
| MCP server | Dış araçlarla konuşma katmanı | Tesisat gibi çalışan entegrasyon sağlıyor |
| Hooks / instructions | Ajan davranışını sabitleme | Aynı kaliteyi tekrar edebiliyor |
| Doctor | Ön kontrol ve validasyon | Sorunları deploy öncesi yakalıyor |
Neden “secure-by-default” lafı önemli?
Açık konuşayım, AI destekli geliştirmede en büyük risklerden biri gizli bilgilerin saçılmasıdır. Kod güzel görünür ama içinde hardcoded key vardır, connection string vardır… sonra güvenlik ekibi gelir ve tüm eğlence biter! azure-functions-skills’in managed identity ve Key Vault reference yönlendirmesi bu yüzden kıymetli.
Bunu geçen yıl İzmir’deki bir sağlık kuruluşunda birebir yaşadık. Geliştirici ekip hızlı gitmek istemişti; test ortamında secrets düz metin olarak kullanılmıştı bile… Prod’a geçerken bunu temizlemek üç gün aldı çünkü bağımlılıklar zincir gibiydi (evet, doğru duydunuz). Bu ne anlama geliyor? Eğer başlangıçtan itibaren identity-first düşünülseydi o kriz çıkmazdı.
Küçük ekip mi büyük kurum mu? Aynı araç farklı sonuç verir
Doğrusu, Küçük bir startup’taysanız bu paket size ciddi hız kazandırır. Hele bir de de tek ya da iki kişilik ekiplerde “dokümantasyon okuyup manuel setup yapma” yükünü azaltır. Tahmin eder mısınız? npx komutu ile başlayıp beş dakika içinde deploy-ready proje görmek fena değil, hatta bayağı iyi.
E tabi enterprise tarafta resim değişiyor. Orada mesele yalnızca hız değil; standardizasyon da lazım. Yanı platform ekibi hangi binding’in kullanılacağını, hangi auth modelinin zorunlu olduğunu. Hangi diagnostic adımların koşacağını önceden belirlemek istiyor (bizzat test ettim). azure-functions-skills tam bu noktada politika taşıyıcısı gibi davranabilir.
Bunu biraz açayım.
Ajana “ne yapacağını” söylemek yetmiyor; “nasıl yapacağını” da sabitlemeniz gerekiyor.
Bence burada kritik karar şu: eğer bütçe kısıtlıysa önce küçük projelerde deneyin, sonra kurumsal standart hâline getirin demek daha mantıklı olabilir (az önce direkt yaygınlaştırın demek istememiştim). Çünkü her otomasyon aracı gibi bunun da bakım maliyeti olacak; skill set büyüdükçe yönetim disiplini şart olacak (yanlış duymadınız)
Maliyet tarafına gerçekçi bakalım
Garip gelecek ama, Ajan destekli geliştirme ilk bakışta ücretsizmiş gibi hissediliyor ama aslında öyle değil tabiî (yanlış duymadınız). LLM kullanım maliyeti var, CLI araçları var, bazen gereksiz denemeler yüzünden token tüketimi artıyor. Üstüne yanlış mimarı seçimin bedelini Azure faturasında görüyorsunuz (özellikle yanlış plan seçildiğinde). Türkiye’de TL bazında bakınca küçük görünen farklar ay sonunda can sıkabiliyor.
Peki neden?
Kendi müşterilerimde gördüğüm kadarıyla maliyet optimizasyonu en çok iki yerde patlıyor: gereksiz dış çağrılar ve kötü concurrency ayarları. Fonksiyon başına client oluşturmak mesela hâlâ karşımıza çıkıyor — sonra performans düşüyor diye herkes şaşırıyor! Oysa problem çoğu zaman altyapıda değil, yazılım deseninde oluyor.
Bana göre güçlü yanı ne? Zayıf yanı ne?
İşin garibi, Güçlü tarafı: bağlam veriyor olmasıdır senkronize şekilde düşünduruyor demeyeyim ama ona yakın dürüyor diyebilirim. Ajanın eline yalnızca prompt değil; skill kataloğu, instruction dosyaları ve doğrulama mekanizması veriyorsunuz yanı iş biraz çerçeveye oturuyor (ciddiyim)
Araya gireyim: Zayıf tarafı: henüz preview olması nedeniyle bazı köşeler ham kalabilir. Bunu küçümsememek lazım çünkü preview araçlarda en ufak sürtünme üretkenliği bozuyor. Mesela dokümantasyon eksikse veya marketplace kurulumu beklediğiniz kadar pürüzsüz değilse kullanıcı hemen geri çekiliyor (ben de ilk duyduğumda şaşırmıştım)
Araya gireyim: Bende ilk denemede ufak bir sürpriz çıktı mesela npm install sırasında ortam uyumsuzluğu yüzünden Node sürümü uyarısı aldım. Sorunu çözmek için makinedeki Node’u 18+ seviyesine çekip tekrar denedim; sonra süreç açıldı gitti. Yanı ürün iyi fikir ama operasyonel hijyen istiyor — bunu atlamayın.
Nereden başlamalı?
npx @azure/functions-skills installile paketi kurun.- Ajanınız için doğru host’u seçin: GitHub Copilot CLI mı Claude Code mu VS Code mu netleştirin.
doctorraporunu CI’a bağlayın; deploy öncesi kontrolü otomatikleştirin.- Mümkünse ilk projeyi düşük riskli tutun; örneğin iç araç entegrasyonu gibi. — bunu es geçmeyin
- Sekretsiz tasarım hedefleyin: managed identity + Key Vault çizgisinden sapmayın.
Türkiye’deki şirketler için pratik okuma biçimi
Bunu Türkiye’deki şirketler açısından değerlendirirsek benim gördüğüm tablo net: birçok kurum AI ajanlarına hevesle bakıyor. Güvenlik politikası olmadan ilerleyince işler dağılıyor. Neyse, hele bir de regülasyona tabi sektörlerde “ajan ne yaptı?” sorusunun cevabı kayıt altına alınmalı. Bu yüzden functions-skills tarzı yapıların değeri yalnızca geliştirici hızında değil, izlenebilirlikte de yatıyor.
İlginç olan şu ki, Kurum içi danışmanlık yaptığım projelerde genelde aynı ikilem çıkıyor: Dev ekip hızlı olmak istiyor, security ekibi kontrollü olmak istiyor, business işe dün teslim bekliyor. İşte böyle anlarda standartlaştırılmış skill set gerçekten nefes aldırır. Bir anlamda ajanın rotasını baştan çizmiş oluyorsunuz; yoksa herkes kendi kafasına göre gitmeye başlıyor… hani küçük kaos dediğimiz şey var ya, tam o.
Peki alternatif ne olabilir?
Eğer bütçeniz dar işe veya henüz agentic development’a hazır değilseniz önce sade bir şablonla başlayabilirsiniz. Azure Functions Core Tools + elle hazırlanmış güvenlik checklist’i gayet iş görür. Ama orta vadede ben yine de böyle paketlere geçmenizi öneririm; çünkü insan eliyle yapılan tekrar işler hem yorucu hem de hata üretmeye açık (bu konuda ikircikliyim)
Düşündüren nokta: Her şeyi ajana bırakmalı mıyız?
Lafı gevelemeden söyleyeyim: hayır, bırakmamalısınız. Agent sizin junior developer’ınız gibi düşünün; hızlıdır, enerjiktir ama deneyimsizdir. Doğru yönde iterseniz harika işler çıkarır, yanlış yönde bırakırsanız sizi production gecesinde uyutmaz!
Bakın, i̇lginç olan şu ki, Bence Microsoft’un yaptığı şey doğru yönde atılmış adım (inanın bana). Hâlâ eksik olan parça organizasyonel kültür. Araç mükemmel olsa bile ekip önü nasıl kullanacağını bilmiyorsa sonuç ortalama kalır. Ben AZ-500 hazırlığı döneminde de aynı dersi almıştım: teknoloji kadar süreç disiplini de gerekiyor,aksi hâlde güvenlik maddeleri kâğıt üstünde kalıyor.
Sıkça Sorulan Sorular
@azure/functions-skills tam olarak ne?
@azure/functions-skills, aslında AI coding agent’lara Azure Functions için hazır bilgi, skill, instruction ve doğrulama katmanı sağlayan bir CLI/paket seti. Yanı ajanın eski ve modası geçmiş yöntemler yerine güncel Azure Functions pratikleriyle çalışmasını sağlıyor — bence bu farkı pratikte çok hissediyorsunuz.
Bunun için hangi araçlara ihtiyacım var?
Aslında liste oldukça kısa: Node 18+, bir Azure aboneliği ve desteklenen ajanlardan biri yeterli. Şu an GitHub Copilot CLI, Claude Code, Codex CLI veya VS Code ile çalışıyor.
`doctor` komutu ne işe yarıyor?
Şunu söyleyeyim, `doctor` projenizi deploy öncesi kontrol edip sorunları raporluyor. Mesela secrets kullanımı, eksik yapılandırmalar ya da uyumsuzluklar varsa bunları erkenden yakalıyor. Tecrübeme göre bu tür kontrolleri deploy sonrasına bırakmak gereksiz zaman kaybettiriyor.
Küçük ekipler mi daha çok faydalanıyor, enterprise mı?
Açıkçası ikisi için de uygun, ama kullanım şekli farklılaşıyor. İşte, küçük ekipler hız kazanıyor; enterprise tarafında işe asıl değer standardizasyon, güvenlik ve izlenebilirlik oluyor (en azından benim deneyimim böyle)
Bütçe tarafında neye dikkat etmeliyim?
Ajan kullanım maliyetinin yanında yanlış mimarı seçimlerinin faturasını da hesaba katmak lazım. Hani managed identity yerine secret saklamak ya da gereksiz kaynak tüketmek gibi şeyler — bunlar uzun vadede maliyeti ciddi artırıyor.
Kaynaklar ve İleri Okuma
- Orijinal duyuru yazısı — Introducing azure-functions-skills: An AI-Era Workspace for Azure Functions (Preview)
- Azure Functions Resmî Dokümantasyonu
- Azure Functions Skills GitHub Deposu (ilgili proje)
Daha Fazla Okuma Önerisiyle Bitirelim
Anlatırken şuna da bakmak isteyebilirsiniz: Azure DevOps. GitHub: Yapay Zekâ Çağında Nereye Gidiyor?
Maliyet tarafını ayrı tartıştıysanız burası iyi tamamlayıcı olur: GitHub Copilot’ta Bütçe, Plan. Kullanımın Yeni Ayarı
MCP dünyasını anlamak için de şu yazıya göz atabilirsiniz: Azure DevOps MCP Server Nisan Güncellemesi: Küçük Dokunuşlar, Büyük Etki
Bu içerik işinize yaradı mı?
Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.









Yorum gönder