Claude Code’un terminalde nasıl çalıştığını, resmi dokümanlara dayanan (VineeTagarwaL’ın Mintlify üzerinde derlediği sürüm) temel noktalarla özetledim.
Claude Code nasıl çalışır?
Kısaca bu, “oku → düşün → aracı kullan → sonuca bak → tekrarla” döngüsüdür.
Agentic Loop’un 6 adımı
- Kullanıcı terminale bir mesaj girer (veya
--print/ stdin ile iletir) - Sistem prompt’u oluşturulur — güncel tarih, git durumu,
CLAUDE.mddosyası, kullanılabilir araçlar listesi - Anthropic API çağrılır → model bir
tool_usebloğu (araç adı + JSON girdisi) üretir - Yetki kontrolü — otomatik onay / onay isteme / engelleme seçeneklerinden biri belirlenir
- Araç çalıştırılır → sonuç (
dosya içeriği, komut çıktısı vb.)tool_resultolarak konuşmaya eklenir - Sonucu alan model ek araç çağrısı yapar veya nihai yanıtı üretir — araç çağrısı kalmayana kadar tekrar eder
Döngü yalnızca yerel terminal sürecinde çalışır. WebFetch, WebSearch, MCP sunucusu gibi açıkça dış dünyaya çağrı yapan araçlar dışında, dosyalar, kabuk ve kimlik bilgileri makinenin dışına çıkmaz.
Bağlam nasıl oluşturulur?
Konuşma başlarken iki blok birleştirilir ve tüm API çağrılarının başına eklenir.
- Sistem bağlamı — mevcut branch, son 5 commit,
git status --shortçıktısı (2.000 karakteri aşarsa kesilir) - Kullanıcı bağlamı —
CLAUDE.mdbellek dosyası (4 aşamalı hiyerarşi taraması), bugünün tarihi (Today's date is YYYY-MM-DD)
Her iki blok da konuşma bazındalodash/memoizeile önbelleğe alınır.setSystemPromptInjection()çağrıldığında önbellek hemen sıfırlanır.
Yetki modeli — araçlar ne zaman çalıştırılır?
| Sonuç | Davranış |
|---|---|
allow |
Hemen çalıştırılır, sonuç konuşmaya eklenir |
ask |
Duraklatılır → onay diyaloğu gösterilir |
deny |
Reddedilir → modele hata döndürülür |
bypassPermissionsmodu: tüm kontroller atlanıracceptEditsmodu: dosya düzenlemeleri otomatik onaylanır,bashiçin yine de onay istenirRead,Glob,Grepgibi salt okunur araçlar tüm modlarda varsayılan olarak otomatik onaylanır
Alt ajanlar (Task aracı)
Claude, Task aracı (AgentTool) ile alt ajanlar başlatabilir. Alt ajanlar, izole bir konuşma ve isteğe bağlı olarak kısıtlı bir araç setiyle kendi Agentic Loop’larını çalıştırır; iş tamamlandığında sonucu üst ajana geri döndürür. Yerel olarak (in-process) veya uzak hesaplama ortamında çalıştırılabilirler.
Konuşmayı kaydetme ve geri yükleme
Konuşmalar ~/.claude/ altında JSON transcript dosyaları olarak saklanır.
--resume <session-id>veya yalnızca--resumeile önceki konuşma sürdürülür- Sürdürme sırasında: tüm mesaj geçmişi yüklenir,
CLAUDE.mddosyaları yeniden taranır, yetki modu varsayılan ayarlara sıfırlanır - Uzun konuşmalar periyodik olarak sıkıştırılır — eski mesajlar özetlenerek bağlam penceresi yönetilir. Tam orijinal transcript diskte korunur
Sorgu motorunun yaptığı işler
Her “tur” query.ts tarafından yürütülür.
- Token akışı terminale gerçek zamanlı olarak yazdırılır
tool_useblokları uygun handler’lara yönlendirilir- Tur başına token ve araç çağrısı bütçesi yönetilir
- Bağlam penceresi dolduğunda sıkıştırma tetiklenir
- Her aracın
maxResultSizeCharsözelliği vardır — sonuç bu sınırı aşarsa geçici bir dosyaya kaydedilir ve modele yalnızca dosya yolu verilir (bağlam penceresi taşmasını önlemek için)
Orijinal metin: How Claude Code works — Mintlify
Not: Bu, VineeTagarwaL’ın Claude Code resmi dokümanlarını Mintlify üzerinde yeniden düzenlediği gayriresmî bir ayna dokümandır.
1 yorum
23'ten beri ReAct yapısı büyük ölçüde değişmemiş gibi görünüyor.