Dört tür loop ve nasıl seçilir
Turn-based, goal-based, time-based ve proactive loop'lar bir sonraki turu kimin ya da neyin başlattığıyla ayrılıyor. Uyan en basit olanı seçmek, verdiğiniz ilk maliyet kararı.
Hepsini tek soru ayırıyor
Her loop aynı soruya farklı cevap veriyor: sıradaki turu ne başlatıyor? Claude Code ekibinin yazısı loop'ları bu cevaba göre dörde ayırıyor. Bu türler üst basamağı daha iyi olan bir merdiven değil. Hepsi birer araç ve işi gören en ucuzu çoğunlukla doğru olanı.
Turn-based
Her turu siz yönlendirirsiniz. Claude bitirir, siz okursunuz, cevap yazarsınız. Claude Code'u çoğu kişi bugün böyle kullanıyor.
Loop olamayacak kadar sıradan görünüyor ama diğerlerinin kıyaslandığı temel bu. Bir iş her adımda sizin muhakemenizi istiyorsa, mesela tasarım kararları ya da yeni özellik, onu turn-based bırakın. Marek Kaput da aynı şeyi söylüyor: özellik işi insan istiyor, o yüzden orada loop sessizce merge etmemeli, bir taslak ve kanıt döndürmeli.
Goal-based
Kontrol edilebilir bir bitiş çizgisi söylersiniz, /goal da koşul sağlanana ya da tur sınırına gelinene kadar Claude'u çalıştırır. Her turdan sonra ayrı bir değerlendirici model koşulun tutup tutmadığına bakar. Addy Osmani koşulu sizin yazdığınız bir şey olarak anlatıyor: testler geçiyor, lint temiz gibi.
Yazıdaki örnek: Lighthouse skoru en az 90, en fazla 5 deneme. İki yarı da önemli. Birincisi kanıt, ikincisi kanıtın hiç gelmediği gün için sert sınır.
$ claude> Set a goal: Lighthouse score at least 90, at most 5 tries✻ Bir değişiklik yapar ve denetimi çalıştırır✻ Değerlendirici tur sonunda skora bakar✻ Skor 84, hedef sağlanmadı, sıradaki tur başlar# Loop kanıtla ya da sınırla biter, ajanın "bitti" demesiyle değil.
Time-based
Turu saat başlatır. /loop bir prompt'u belirli aralıkla, sizin makinenizde yeniden çalıştırır. Yazıdaki örnek, bir pull request'e her 5 dakikada bakmak. /schedule aynı fikri bulutta bir routine olarak çalıştırır.
Claude Code dokümanına göre üç seçenek var: /schedule ile bulut routine'leri (makineniz açık olmadan çalışır, en az 1 saat), Desktop zamanlanmış görevleri (sizin makineniz, Claude kurarsa en az 1 dakika) ve oturum içi /loop. /loop 5m prompt yazarsanız aralığı siz sabitlersiniz, /loop prompt yazarsanız her aralığı Claude seçer, çıplak /loop ise yerleşik bir bakım prompt'unu ya da sizin loop.md dosyanızı çalıştırır.
Bir sayfanın Lighthouse skoru 90'a ulaşana kadar Claude'un çalışmaya devam etmesini, birkaç denemeden sonra da bırakmasını istiyorsunuz. Hangi tür uyar?
Proactive
Ortada kimse yok. İşi bir olay ya da bir zamanlama başlatıyor: triyaj, migration'lar, bağımlılık güncellemeleri. Yazıdaki örnek, üç düzeltmeyi paralel worktree'lerde yürütüyor ve en iyisini bir hakem seçiyor.
Bu tür en güçlüsü ve sonraki derslere en çok ihtiyaç duyan tür. Kimse izlemediği için kontrol ve durma koşulu tek denetim. Yoklama yerine olaya tepki vermek istiyorsanız doküman Channels'ı gösteriyor.
Nasıl seçilir
Bu sırayla sorun.
- Her adımda sizin muhakemenizi mi istiyor? Turn-based kalın.
- Kontrol edilebilir bir bitiş çizgisi var mı?
/goalkullanın. - Zamanla değişen ve izlemeniz gereken bir şey mi var?
/loopkullanın, makineniz açık kalmasın istiyorsanız/schedule. Aralığı, izlediğiniz şeyin değişme hızına uydurun. - Kimse yokken de çalışsın mı? Proactive olun, ama ancak kontrol ve sınırlar yerindeyken.
Yazının maliyet tavsiyesi de bu listede yavaş inmeyi destekliyor: işe yarayan en basit aracı, mümkünse daha ucuz bir modelle kullanın.
Proactive loop neden en çok iyi bir kontrole ve durma koşuluna ihtiyaç duyan tür?
Bölüm tamamlandı
Loop engineering kursunun 6 bölümünden 2. bölümü bitirdiniz.
En eski loop, bir ajana tek bir prompt dosyasını sonsuza kadar veren bash while döngüsü. Her turda taze bağlam, iterasyon başına tek görev ve backpressure olarak testler onu çalıştırıyor. Durma koşulunun olmaması da kursun geri kalanına neden ihtiyaç olduğunu gösteriyor.
Sonraki bölüm