51 puan yazan princox 29 일 전 | 1 yorum | WhatsApp'ta paylaş

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ı

  1. Kullanıcı terminale bir mesaj girer (veya --print / stdin ile iletir)
  2. Sistem prompt’u oluşturulur — güncel tarih, git durumu, CLAUDE.md dosyası, kullanılabilir araçlar listesi
  3. Anthropic API çağrılır → model bir tool_use bloğu (araç adı + JSON girdisi) üretir
  4. Yetki kontrolü — otomatik onay / onay isteme / engelleme seçeneklerinden biri belirlenir
  5. Araç çalıştırılır → sonuç (dosya içeriği, komut çıktısı vb.) tool_result olarak konuşmaya eklenir
  6. 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.md bellek 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ında lodash/memoize ile ö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
  • bypassPermissions modu: tüm kontroller atlanır
  • acceptEdits modu: dosya düzenlemeleri otomatik onaylanır, bash için yine de onay istenir
  • Read, Glob, Grep gibi 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 --resume ile önceki konuşma sürdürülür
  • Sürdürme sırasında: tüm mesaj geçmişi yüklenir, CLAUDE.md dosyaları 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_use blokları 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

 
jeeeyul 29 일 전

23'ten beri ReAct yapısı büyük ölçüde değişmemiş gibi görünüyor.