İçeriğe geç
Hakan Kurt
ClaudeYapay Zeka

Claude Code Nedir? Terminalde Çalışan Yapay Zekâ Yazılım Ajanı

Claude Code terminal üzerinden çalışan yapay zekâ ajanı

Yazılım geliştirirken bazen asıl işi yazmaktan çok etrafındaki işleri yaparız: Projede ilgili dosyayı bulmak, hatanın kaynağını takip etmek, test yazmak, komutların çıktısını incelemek veya aynı düzenlemeyi birden fazla dosyada tutarlı biçimde uygulamak. Claude Code, tam da bu akışı terminalin içinden ele alan yapay zekâ destekli bir geliştirme aracı.

Kısa tanımıyla Claude Code; kod tabanını okuyabilen, dosyaları düzenleyebilen, komut çalıştırabilen ve geliştirme araçlarıyla birlikte çalışabilen ajan tabanlı bir kodlama aracı. Terminalin yanında IDE, masaüstü uygulaması ve web üzerinden de kullanılabiliyor.[1]

Claude Code ne yapar?

Claude Code’a yalnızca “şu fonksiyonu yaz” demek zorunda değilsiniz. Daha doğal ve görev odaklı isteklerle ilerleyebilirsiniz:

  • “Giriş modülündeki testleri yaz, çalıştır ve hataları düzelt.”
  • “Bu hata mesajının kaynağını bul; önce nedenini açıkla, sonra güvenli düzeltmeyi uygula.”
  • “Son değişiklikleri incele; güvenlik veya performans açısından sorun varsa listele.”
  • “Bu Laravel projesinde önbellek davranışını incele ve mevcut yapıya uygun çözüm üret.”

Araç, projenin ilgili bölümlerini okumak, plan yapmak, dosya değişiklikleri hazırlamak ve komut çıktılarından doğrulama yapmak için tasarlanmıştır. Anthropic dokümantasyonunda öne çıkan kullanım alanları; özellik geliştirme, hata düzeltme, test yazımı, bağımlılık güncelleme, merge conflict çözümü ve sürüm notu hazırlama olarak sıralanıyor.[1]

Klasik sohbet aracından farkı ne?

Bir sohbet aracına kod parçası yapıştırıp cevap almak hâlâ faydalı olabilir. Ancak büyük bir projede bağlam yalnızca tek dosyadan oluşmaz. Konfigürasyon, bağımlılıklar, testler, isimlendirme kuralları ve mevcut mimari birlikte değerlendirilmelidir.

Claude Code’ın güçlü tarafı, bu bağlamı proje klasöründen alabilmesidir. Dosyaları tarar, bağlantıları araştırır ve yapılacak işi bir geliştirme görevi olarak ele alır. Bu yaklaşım, özellikle eski projelerde “Bu kod nerede kullanılıyor?” veya “Bu değişiklik hangi testleri etkiler?” sorularını daha hızlı ele almak için yararlı olabilir.

Yine de önemli bir sınır var: Araç üretkendir ama sorumluluk geliştiricide kalır. Oluşturulan diff’leri incelemek, testleri çalıştırmak, erişim izinlerini sınırlamak ve canlı ortama doğrudan müdahaleyi kontrollü yürütmek gerekir.

Terminalden başlangıç

Claude Code, macOS, Linux ve WSL ortamlarında yerel kurulumla kullanılabiliyor. Resmî dokümantasyondaki kurulum komutu şöyledir:[1]

curl -fsSL https://claude.ai/install.sh | bash

Kurulumdan sonra proje klasörüne geçip aşağıdaki komutu çalıştırabilirsiniz:

cd proje-klasoru
claude

İlk kullanımda oturum açmanız istenir. Sonrasında araca görevleri doğal dille verebilirsiniz. Örneğin:

Bu projedeki ödeme akışını incele.
Önce riskli noktaları maddeler halinde belirt.
Daha sonra yalnızca test dosyalarında önerilen testleri ekle ve çalıştır.

Bu tür bir istek, hem görevin kapsamını daraltır hem de değişiklikten önce inceleme yapılmasını sağlar.

Proje kurallarını CLAUDE.md ile kalıcılaştırma

Her projenin kendine özgü kuralları vardır: PHP sürümü, kod stili, test komutu, kullanılmaması gereken paketler veya dağıtım adımları gibi. Claude Code, proje köküne eklenen CLAUDE.md dosyasını oturum başlangıcında okuyarak bu bilgileri bağlam olarak kullanabilir.[1]

Örnek bir dosya şöyle olabilir:

# Proje kuralları

- PHP 8.2 ve Laravel 11 kullanıyoruz.
- Kod stili için `./vendor/bin/pint` çalıştır.
- Testten önce `.env.testing` ayarlarını kontrol et.
- Migration dosyalarını değiştirmeden önce planını açıkla.
- Üretim ortamında komut çalıştırma.

Bu basit belge, her yeni oturumda aynı tercihleri tekrar yazma ihtiyacını azaltır. Özellikle ekip projelerinde mimari kararları ve kontrol listelerini görünür kılmak için kullanışlıdır.

Hangi işler için uygun?

Claude Code tek satırlık görevler için de kullanılabilir; asıl değerini ise çok dosyalı ve tekrarlanan işlerde gösterebilir:

Hata ayıklama

Bir stack trace’i verip hatanın geçtiği dosyaları, ilişkili kodları ve testleri araştırmasını isteyebilirsiniz. İyi bir pratik olarak ilk aşamada yalnızca teşhis istemek, düzeltmeyi ise ikinci adımda onayla yaptırmaktır.

Test kapsamını iyileştirme

Mevcut testleri incelemesini, kapsanmayan kritik senaryoları önermesini ve seçtiğiniz testleri yazmasını isteyebilirsiniz. Resmî belgelerde test yazma ve başarısız testleri düzeltme, desteklenen temel iş akışları arasında yer alır.[1]

Tekrarlanan bakım işleri

Lint hatalarının düzeltilmesi, eski API kullanımlarının güncellenmesi, sürüm notu hazırlanması veya benzer değişikliklerin birçok dosyada uygulanması gibi işler buna örnektir.[1]

Kod inceleme

Git diff üzerinden hata, güvenlik riski ve tutarsızlık araması yapabilir. Burada amaç geliştiricinin yerini almak değil; gözden kaçabilecek noktalar için ikinci bir inceleme katmanı eklemektir.

Güvenli ve verimli kullanım için 5 öneri

  1. İşi küçük parçalara bölün. “Uygulamayı düzelt” yerine net bir modül, hata veya kabul kriteri verin.
  2. Önce plan, sonra değişiklik isteyin. Büyük refactor’larda ilk çıktı; dosyalar, riskler ve önerilen adımlar olsun.
  3. İzinleri gereğinden geniş tutmayın. Özellikle silme, dağıtım ve dış servis erişimlerinde kontrol sizde kalmalı.
  4. Test ve diff kontrolünü atlamayın. Araç bir değişiklik hazırlasa bile sonucu proje testleriyle doğrulayın.
  5. Proje bilgisini CLAUDE.md içine yazın. Tekrarlanan kurallar, agent çıktısının daha tutarlı olmasını sağlar.[1]

Sonuç

Claude Code, “kod üreten sohbet botu” yaklaşımından daha ileri bir çalışma biçimi sunuyor: kod tabanını bağlamıyla okumaya, terminal komutlarıyla çalışmaya ve geliştirme görevini uçtan uca ele almaya odaklanıyor.[1]

Doğru kapsam, açık proje kuralları ve zorunlu doğrulama adımlarıyla kullanıldığında; hata ayıklama, test yazımı ve bakım süreçlerinde ciddi zaman kazandırabilir. En iyi sonuç ise aracı otomatik pilot gibi değil, hızlı çalışan ve yönlendirilmesi gereken bir ekip arkadaşı gibi konumlandırınca alınır.

Kaynaklar

[1] https://code.claude.com/docs/en/overview — Claude Code Documentation — Overview