Coding Agent
Görevi alıp kodu kendisi değiştiren yapay zekâ
Bir yazılım görevini alıp depoyu okuyan, birden çok dosyayı düzenleyen, komut ve testleri çalıştıran ve sonucu doğrulayana kadar döngüde çalışan, kod için özelleşmiş bir yapay zekâ ajanı.
Klasik kod asistanı otomatik tamamlama yapar: sen yazarken bir sonraki satırı ya da bloğu tahmin eder, sen Tab'a basarsın. Direksiyon sendedir; hangi dosyaya bakılacağına, testin ne zaman çalışacağına sen karar verirsin.
Kodlama ajanı (coding agent) ise ona bir görev verdiğinde işi kendisi yürütür: ilgili dosyaları bulur ve okur, bir plan çıkarır, birden çok dosyada değişiklik yapar, terminalde build ve test komutlarını çalıştırır, hata çıkarsa düzeltip yeniden dener. Bunu bir ajan döngüsü içinde yapar ve sonucu bir diff ya da pull request olarak incelemene sunar.
Teknik olarak kodlama ajanı = dil modeli + harness. Model kararları
verir; harness ona dosya okuma/düzenleme, bash, arama ve MCP gibi
araçları, proje talimat dosyalarını (CLAUDE.md, AGENTS.md) ve
izin/sandbox katmanını sağlar. Bu yüzden aynı model farklı bir ajanda
farklı sonuç verebilir.
Ekim 2026 itibarıyla yaygın örnekler üç biçimde çalışıyor:
- Terminal (CLI): Claude Code, OpenAI Codex CLI, GitHub Copilot CLI, Antigravity CLI, açık kaynak OpenCode.
- IDE içinde: Cursor, VS Code'daki Copilot agent mode, Cline ve Claude Code / Codex eklentileri.
- Bulutta, arka planda: Claude Code cloud oturumları, Codex Cloud, Copilot cloud agent, Cursor Cloud Agents. Görevi verirsin, ajan kendi sanal makinesinde çalışır, sen başka işe geçersin.
Otomatik tamamlama, cümleni senin yerine bitiren bir arkadaş gibidir: hızlıdır ama yazıyı yine sen yazarsın.
Kodlama ajanı ise işe yeni başlamış ama çok hızlı bir stajyere iş vermek gibidir. "Ödeme sayfasındaki şu hatayı düzelt" dersin; o kodu okur, değişikliği yapar, testleri çalıştırır ve sana "şunları değiştirdim, testler geçiyor" diye bir özet getirir. İyi bir stajyerde olduğu gibi işi net tarif etmen, neye dokunabileceğini sınırlaman ve teslim edileni incelemeden canlıya almaman gerekir.
Bir Laravel projesinde php artisan test iki testte kırmızı. Terminalde
ajana şunu yazıyorsun: "Başarısız iki testi bul, nedenini açıkla ve
düzelt. Migration dosyalarına dokunma."
Ajan önce test çıktısını okur, ilgili controller ve model dosyalarını açar, sorunun bir tarih formatı dönüşümünde olduğunu bulur, iki dosyada düzeltme yapar ve testleri yeniden çalıştırır. Bir test hâlâ kırmızıysa döngüye devam eder. Sonunda yeşil test çıktısını, değişen dosyaların diff'ini ve kısa bir açıklamayı gösterir. Sen diff'i okursun, beğenirsen commit edersin. Aynı görevi bir bulut ajanına verseydin sonucu bir pull request olarak alırdın.
{
"permissions": {
"allow": [
"Bash(npm run *)",
"Bash(git diff *)"
],
"deny": [
"Bash(git push *)",
"Read(./.env)",
"Read(./secrets/**)"
]
}
}# Yazma yalnızca çalışma klasöründe; sandbox dışına çıkmak onay ister
sandbox_mode = "workspace-write"
approval_policy = "on-request"# Claude Code: print modu, tur ve bütçe sınırıyla
claude -p --max-turns 20 --max-budget-usd 5.00 \
"Başarısız testleri düzelt ve değişiklikleri özetle"
# Codex CLI: etkileşimsiz çalıştırma
codex exec "Başarısız testleri düzelt ve değişiklikleri özetle"- Birden çok dosyaya yayılan, net tanımlanabilir işler: hata düzeltme, test yazma, refactor, bağımlılık güncelleme
- Doğrulaması otomatik yapılabilen görevler: test, linter, type check ya da build ile 'bitti mi?' sorusu cevaplanabiliyorsa
- Tanımadığın bir kod tabanını keşfetmek: 'kimlik doğrulama nasıl çalışıyor, hangi dosyalarda?'
- Tekrarlayan bakım işlerini arka planda bir bulut ajanına devretmek ve sonucu PR olarak incelemek
- Gereksinimi sende bile net olmayan işler; önce ne istediğini yaz, sonra ajana ver
- Test ya da başka bir otomatik doğrulama yolu olmayan, hatası pahalı kod (ödeme, yetkilendirme, veri silme) için incelemesiz kullanım
- Gizli bilgilere, üretim veritabanına ya da canlı sunucuya erişimi olan bir ortamda, sandbox ve izin kuralları olmadan
- Bir satırlık değişiklikler; burada otomatik tamamlama ya da elle düzenleme daha hızlıdır
Diff'i okumadan kabul etmek
Ajan 'testler geçiyor' dese de testi gevşetmiş, bir kontrolü atlamış ya da istenmeyen bir dosyayı değiştirmiş olabilir. Ajanın ürettiği kodu bir ekip arkadaşının PR'ı gibi incele.
Tüm izinleri açmak
bypassPermissions, Codex'te danger-full-access ya da Cursor'da Run Everything gibi ayarlar onay adımını ya da sandbox'ı devreden çıkarır. Claude Code dokümantasyonu bypassPermissions modunu yalnızca izole konteyner ve VM'ler için öneriyor; diğerleri için de aynı kural geçerli.
Prompt injection'ı hafife almak
Ajanın okuduğu README, issue, web sayfası ya da MCP aracı çıktısı gizli talimat içerebilir. Ajan bir de sırlarına ve ağa erişebiliyorsa bu, veri sızıntısına dönüşebilir. Ağ erişimini kısıtla, sırları ajanın okuyamayacağı yerde tut.
Bağlamı doldurup maliyeti patlatmak
Uzun oturumlar, gereksiz MCP sunucuları ve dev log çıktıları her turda yeniden token harcatır. Görev bitince oturumu temizle, büyük çıktıları filtrele, işi küçük parçalara böl.
Model ile ajanı karıştırmak
Bir ajanın başarısı yalnızca modelden gelmez; araçlar, talimat dosyaları ve izinler de belirleyicidir. Aynı modeli farklı bir ajanda denemek ya da proje talimat dosyasını iyileştirmek, model değiştirmekten daha çok fark yaratabilir.