# Alt ajanlar dağınıklığı oturumunuzun dışında tutar

Alt ajan kendi bağlam penceresinde çalışır ve size yalnızca bir özet döner. Faydanın tamamı bu, sınırın tamamı da bu; o yüzden geri ne geleceğini bilmekte fayda var.

## Bilerek açılmış ikinci bir bağlam penceresi

Claude'dan, kullanımdan kalkmış bir fonksiyonun çağrıldığı her yeri bulmasını istediğinizi düşünün. Otuz dosya açıyor, uzun arama sonuçları okuyor ve işin sonunda ana oturumunuz bir daha asla ihtiyaç duymayacağınız malzemeyle doluyor.

**Alt ajan** bu işi başka bir yere taşıyor. Kendi bağlam penceresi, kendi sistem prompt'u, kendi araç seti ve kendi izinleri var. Okumayı orada yapıyor, oturumunuza ise bir özet dönüyor.

Otuz dosya alt ajanın bağlamında kalıyor ve iş bitince gidiyor. Oturumunuz sonucu alıyor. Bağlam derslerinin anlattığı aynı bütçe sorunu bu, harcamayı atılacak bir yere taşıyarak çözülüyor.

## Hazır gelenler

Claude Code birkaçıyla birlikte geliyor. **Explore** salt okunur arama yapıyor, CLAUDE.md ve git status'u atlıyor, bu yüzden hafif. **Plan** bir yaklaşım tasarlıyor. Ayrıca genel amaçlı bir ajan, `statusline-setup`, `claude-code-guide` ve bir de her şeyi karşılayan bir ajan var.

Aralarından Claude kendisi seçiyor. Seçimi `@agent-name` ile zorlayabilir ya da tüm oturumu `--agent <name>` ile tek bir ajan olarak çalıştırabilirsiniz.

## Kendinizinkini yazmak

Özel bir alt ajan, frontmatter'lı bir markdown dosyası. Proje için `.claude/agents/` içinde, kendiniz için `~/.claude/agents/` içinde duruyor. Yalnızca `name` ve `description` zorunlu.

```markdown
---
name: security-reviewer
description: Reviews a diff for security problems. Use after changes to auth, input handling or file access.
tools: Read, Grep, Glob
model: haiku
---

Review the changes for injection, unsafe file access and leaked secrets.
Report only real findings, each with a file and line. Skip style.
Keep the answer under twenty lines.
```

Bu dosyadaki üç tercih değerin çoğunu taşıyor.

- `tools: Read, Grep, Glob` reviewer'ın hiçbir şeyi düzenleyememesini sağlıyor. Bu sınırı harness uyguluyor. Prompt'a "düzenleme" yazmak yalnızca bir rica olurdu.
- `model: haiku` arama türü bir iş için yeterli ve daha ucuz. Model seçimi şu sırayla çözülüyor: çağrıdaki parametre, frontmatter, `CLAUDE_CODE_SUBAGENT_MODEL`, sonra ana model.
- Prompt'un son iki satırı geri ne geleceğini belirliyor. Kısa özet isteyin ve reviewer'lara stili atlamalarını söyleyin, yoksa her zaman bir şey bulurlar.

**Question:** Bir review alt ajanına neden yalnızca Read, Grep ve Glob verilir?

- Bunlar en hızlı araçlar
- Harness zorlar, yani yanlışlıkla bile düzenleyemez
- Alt ajanlar başka araç kullanamaz
- Özet daha kısa olur

**Answer:** Harness zorlar, yani yanlışlıkla bile düzenleyemez. Frontmatter'daki araç sınırını harness uygular. Prompt'a 'düzenleme' yazmak modelden yalnızca uslu durmasını rica etmek olurdu.


## Geri gelen şey maliyetin kendisi

Elinize geçen tek şey özet. Alt ajan cevabı bulsa da raporu belirsiz yazdıysa ayrıntı bağlamıyla birlikte gitmiştir. Bu yüzden başlamadan önce neyi isteyeceğinize, örneğin dosya yollarına ve satır numaralarına, siz karar veriyorsunuz.

Raporu komut olarak değil, girdi olarak ele alın. Raporlar talimat benzeri metin için taranıyor; bu metin işaretleniyor ama silinmiyor. Yani alt ajanın okuduğu bir dosya, geri verdiği metne yön vermeye çalışabilir.

> **Alt ajanın da alt ajanı olabilir**
Varsayılan olarak üç katmana kadar iç içe geçebiliyorlar ve aynı anda 20 tanesi çalışabiliyor. Bir oturumdaki toplam sayıya sınır yok; gevşek bir prompt, istediğinizden çok daha fazla iş başlatabilir.


## Ne zaman değer

İş token olarak büyük, sonuç olarak küçükse alt ajan kullanın: kod tabanında arama, log okuma, diff inceleme. Ara adımları görmeniz gerekiyorsa ya da iş, devretmenin yapmaktan pahalı olduğu üç satırlık bir düzenlemeyse kullanmayın.

Dosya düzenleyen işler için `isolation: worktree` alt ajana geçici bir git worktree veriyor; hiçbir şey değişmediyse otomatik siliniyor. Arka planda çalıştırmak için `/subtask <task>` çatallanmış bir arka plan alt ajanı başlatıyor, `Ctrl+B` çalışan bir görevi arka plana atıyor. `/tasks` bunları yönetiyor.

> **Sessiz yazım hataları**
Yanlış yazılmış frontmatter alanları sessizce yok sayılıyor ve `name` olmayan bir dosya dokümantasyon sayılıp atlanıyor. Bir alt ajan sanki bir ayar eksikmiş gibi davranıyorsa `claude --debug` çalıştırın ve çıktıda "does not recognize or apply" araması yapın.


**Question:** Alt ajan ne zaman yanlış seçimdir?

- Tek bir neden için yüzlerce satır log okumak
- Kendinizin yapabileceği üç satırlık bir düzenleme
- Büyük bir kod tabanında çağrı yerlerini aramak
- Kısıtlı araçlarla bir diff'i incelemek

**Answer:** Kendinizin yapabileceği üç satırlık bir düzenleme. Devretmenin bedeli var: yeni bir bağlam ve geri gelen bir özet. Küçük bir düzenlemede bu bedel işin kendisinden büyük.
