Claude Code bir sohbet penceresi değil.
Projeni okuyor, dosya değiştiriyor, komut çalıştırıyor. Verdiğin görev gerçek değişikliklere dönüşüyor.
Bu fark her şeyi değiştiriyor: belirsiz bir talimatın etkisi artık yanlış bir paragrafla sınırlı kalmıyor. Bu yazı o aracı kod bilmeden verimli kullanmayı anlatıyor.
Verimli kullanmanın karşılığı da basit: ajanın yapacağı işi anlaşılır biçimde sınırlamak.
Eylem yapan bir araçla çalışıyorsun
Metin öneren bir araçta yanlış çıktı sıkıcı bir şey. Dosya değiştiren bir araçta yanlış çıktı bir iş.
Bu yüzden ilk günün en değerli yatırımı hız değil, geri dönüş yolu. Yanlış çıktıyı geri almak mümkünse deneme sayısı da artıyor.
Bu yüzden ilk kullanımdan önce iki şeyi anla: hangi projede çalışıyorsun ve o projede neye dokunabiliyor?
Kapsamı bilmek kod okumayı gerektirmiyor. Hangi klasörde olduğunu ve hangi dosyaların değiştiğini görmek yetiyor.
Bu bilgi ilk saatte alınıyor ve sonraki bütün günleri rahatlatıyor.
Kapsamı bilmek bir güvenlik meselesi de. Yanlış klasörde çalışan bir ajan, doğru talimatla bile yanlış dosyaya dokunuyor.
İlk oturumda "hangi klasördesin, burada ne var" diye sormak yetiyor. Cevabı okuyup doğru yerde olduğunu doğruluyorsun.
İsteği kullanıcı davranışı olarak yaz
Bağımsız bir çevirmen için teslim takip aracı geliştirdiğini düşün.
"Uygulamayı iyileştir" demek yerine şunu de: teslim tarihi geçmiş işler listede görünür bir uyarı taşısın.
Sonra koşulları ekle. Tamamlanan işlerde uyarı çıkmasın. Tarihi olmayan kayıt ayrı gösterilsin. Mevcut kayıtlar korunsun.
Üçüncü koşul en önemlisi. Mevcut veriye ne olacağını söylemezsen ajan onu yeniden kurmakta serbest kalıyor.
Böyle bir görev ajanın neyi değiştireceğini daraltıyor. Sonucu da kendi alan bilgine dayanarak değerlendirebiliyorsun; iyi tarif, teknik olmayan kişinin en güçlü başlangıç noktası.
Tarifi yazarken kod kelimesi kullanman da gerekmiyor. Kullanıcının ne göreceğini anlatmak yetiyor; nasıl yapılacağı ajanın işi.
Önce durumu anlamasını iste
Yeni özelliği istemeden önce projenin mevcut durumunu okumasını iste.
Hangi bölüm değişecek, bilmediği bir şey varsa neyi araştırması gerekiyor? Bu adım bir plan üretiyor ve planı okumak senin işin.
Planı uzun olduğu için iyi sayma. Görevin dışındaki alanlara taşıyorsa kapsamı düzelt.
Küçük bir teslim uyarısı için bütün veri yapısının yenilenmesi öneriliyorsa gerekçeyi sor. Gereken değişiklik büyüyebilir; ama büyüme sessizce kabul edilmiş bir varsayım olarak kalmasın.
Planı okumak iki dakika sürüyor. Okunmadan onaylanan bir plan, yirmi dakika sonra her yere dokunmuş oluyor.
Kabul koşulunu görünür tut
Tarihi geçen açık iş uyarı alacak. Tamamlanan iş almayacak. Sayfa yenilendiğinde davranış korunacak.
Bu üç cümle kod yazmadan denetlenebiliyor. Ajanın işi bittiğinde yalnız açıklamasını okuma; uygulamayı bu durumlarla kullan.
Kendi denemende doğru sonucu tanıyacağın örnekler hazır olmalı. Örnek yoksa "çalışıyor" cümlesi bir izlenim oluyor.
Koşulları yazmanın bir faydası daha var: ajan da onları okuyup kendi işini kontrol edebiliyor.
Aynı koşullar ikinci özellikte de duruyor. Böylece yeni bir istek eski davranışı bozduğunda hemen görüyorsun.
Koşulları bir dosyada topla. On maddelik bir liste, ürün büyüdükçe en çok işe yarayan şey oluyor.
Çalışan durumu kaybetme
Sürüm takibinin ne işe yaradığını öğrenmek, her kod satırını öğrenmekten ayrı bir iş.
Üç soruyu cevaplayabilmelisin. Değişiklik öncesinde neredeydin? Sonrasında hangi dosyalar değişti? Gerekirse nasıl döneceksin?
Bu cevaplar yoksa bir hatayı düzeltmeye çalışırken iyi sürümü de kaybedebiliyorsun. Başlangıç düzenini kurmak için teknik destek almak mantıklı.
Üretim hızının yanında geri dönüş yolunu da hazırla. İkincisi olmadan birincisi bir süre sonra durmuş oluyor.
Geri dönüş yolu olan biri daha cesur deniyor. Kaybetme korkusu kalkınca deneme sayısı artıyor ve öğrenme de hızlanıyor.
Bir görev bitmeden yenisini ekleme
Teslim uyarısı üzerinde çalışırken tasarımın tamamını, ödeme akışını ve yeni rapor ekranını istemek işi dağıtıyor.
Sonraki fikri ayrı bir nota yaz. Tamamlanan değişikliğin sonucunu görüp kaydettikten sonra yeni göreve geç.
Böylece hangi kararın hangi etkiyi ürettiği anlaşılır kalıyor. Uzun bir sohbetin içindeki bütün isteklerin aynı anda yapılması verimlilik ölçüsü değil.
Dağılan bir görev, iki saat sonra "neyi değiştirdik" sorusuyla bitiyor.
Ayrı not tutmak fikirleri de kurtarıyor. Sırası gelmeyen fikir kaybolmuyor, sadece bekliyor.
Hatayı düzeltme görevine çevir
"Çalışmıyor" bir hata tarifi değil.
Hangi işlemi yaptın, ne bekledin, ne oldu? Ekran görüntüsü ve güvenle paylaşılabilecek hata mesajı yardımcı oluyor.
Parola, erişim anahtarı ya da gerçek müşteri bilgisi paylaşma. Ajan ayrıntıyı araştırabiliyor; ama senin görmediğin bir iş kuralını kendiliğinden bilmesini bekleyemezsin.
Kullanıcının doğru deneyimini sen tarif ediyorsun. Bu, aracın yapamadığı tek şey.
Hata tarifini yazmak da bir beceri. Üç cümle yetiyor: ne yaptım, ne bekledim, ne oldu.
Tekrar eden kararı nota geçir
Bir süre sonra projede tekrar eden kararlar çıkıyor: kullanılacak dil, tasarım tercihleri, kontrol komutları, dokunulmaması gereken alanlar.
Bunları kalıcı bir proje notuna geçirmek, her oturumda yeniden anlatma yükünü kaldırıyor.
Ama notu gereksiz kurallarla doldurma. Açık, geçerli ve görevle ilgili bilgiler bulunsun. Eski bir karar değiştiğinde notu da güncelle.
Ajanın yanlış bilgiyi tutarlı biçimde uygulaması, tutarsızlıktan daha iyi sonuç vermiyor.
Notu ayda bir oku. Hangi maddeyi artık kullanmıyorsan sil; kısa not okunuyor, uzun not atlanıyor.
Nerede biter
Bir kodlama ajanını kullanmakla üretimdeki her teknik sorunu çözmek aynı beceri değil.
Ödeme, veri erişimi ve karmaşık sistem tasarımında uzman desteği alabileceğin yolu açık tut. Sınırı bilmek ilerlemeyi kolaylaştırıyor.
Sınırı bilen kişi daha hızlı da ilerliyor. Nerede duracağını bilmeyen, her katmanda aynı tereddütle yavaşlıyor.
İlk sürümü kapsamak ayrı bir rehberde duruyor; buradaki iş aracı yönetmek, kapsamı seçmek değil.
İkisi birlikte yürüyor da. Dar kapsam iyi tarif yazmayı kolaylaştırıyor, iyi tarif de kapsamın dağılmasını engelliyor.
Kim için
Kendi işinde çözmek istediği bir problemi olan ve onu yazıya dökebilen herkes için. Kod bilgisi ön koşul değil.
Yazılım mühendisliği öğrenmek isteyen için de yarım. Burada öğrenilen şey ajanı yönetmek; temel bilgisayar bilimi başka bir yol.
İkisini karıştırmamak da faydalı. Ajanı iyi yöneten biri, kod okumayı sonradan çok daha kolay öğreniyor.
Çünkü artık soruları var. Boşlukta öğrenilen kavram unutuluyor, bir ihtiyaçtan doğan kavram kalıyor.
Bugün yapılacak tek şey
Bütün ürünü kurma.
Tek bir davranış seç ve cümleyle yaz. Üç kabul koşulu ekle. Ajandan önce mevcut durumu okumasını iste, planı oku, sonra çalıştır.
Planı okurken tek soruyu sor: bu adımların hangisi benim istediğim şeyin dışında? O adımı sil, kalanı onayla.
Sonucu koşullarla dene ve çalışan değişikliği kaydet. Ardından ajanın nerede doğru varsaydığını, nerede eksik bilgi istediğini not et; bir sonraki görev o notla daha açık olacak.
Akşam elinde çalışan tek bir davranış olsun. Bir davranış, on yarım denemeden çok daha fazla öğretiyor.
Yarın ikinci davranışa geçersin. Ürün böyle birikiyor.