Dokümantasyon/Vulgr Agent (CLI)

Agent mimarisi

Motor döngüsü ve src/ altındaki modüller — UI’dan bağımsız, olay güdümlü ve önbellek dostu.

Motor döngüsü

core/engine.ts agent döngüsünü çalıştırır:

route → stream → izin kapısı → araçlar → sonuç → tekrar
  1. Route — router görev için bir model ve effort seçer.
  2. Stream — modelin cevabı sağlayıcıdan akış olarak alınır.
  3. İzin kapısı — her araç çağrısı izin politikasından geçer.
  4. Araçlar — izin verilen çağrılar çalışır; çıktıları araç sonucu olur.
  5. Tekrar — sonuçlar sona eklenir ve tur bitene kadar döngü sürer.

Motor UI’dan bağımsızdır: yalnızca protokol olayları yayar (protocol/events.ts). Ink TUI, headless mod ve JSONL kaydı aynı olayların tüketicileridir.

Modüller

YolSorumluluk
core/engine.tsAgent döngüsü; yalnızca protokol olayları yayar.
router/Görev türü × karmaşıklık × profil → model + effort; yükseltme; emin değilse Haiku ile sınıflandırma.
llm/Sağlayıcıdan bağımsız mesaj ve olay tipleri; Anthropic adaptörü; çevrimdışı ve test için scripted sağlayıcı; kendi retry / backoff politikası.
tools/read, glob, grep, edit, write, exec_command, write_stdin, read_block, update_plan, ask_user.
permissions/Komut sınıflandırma ve politika.
context/Donmuş sistem promptu, ortam envanteri, proje talimat dosyaları, reminder’lardaki dinamik durum.
core/optimizer, connectivity, session/resumeToken optimizasyonu, çevrimdışı dayanıklılık, sunucu tarafı araç çıktısı temizleme / compaction, keep-alive, /resume.
headless.tsEtkileşimsiz çalışma (vulgr -p).
tui/Ink arayüzü: bloklar, agent turu, izin ve soru kutuları, durum çubuğu.

LLM katmanı

  • Sağlayıcıdan bağımsız tipler — motor SDK tiplerini doğrudan görmez.
  • Anthropic adaptörü — imzalı thinking bloklarını aynen geri oynatır ve prompt-cache breakpoint’leri yerleştirir.
  • Scripted sağlayıcı — çevrimdışı kullanım ve testler için deterministik cevaplar.
  • Retry / backoff — SDK varsayılanı değil, Vulgr Agent’ın kendi politikası.

Bağlam ve önbellek

context/, donmuş bir sistem promptu ve bir ortam envanteri oluşturur; proje talimatlarını AGENTS.md, VULGR.md ya da CLAUDE.md dosyalarından yükler.

Dayanıklılık ve oturumlar

  • Token optimizer — çalışma bağlamını yalın tutar.
  • Connectivity — çevrimdışı kalmaya dayanır; uzun turlarda keep-alive.
  • Sunucu tarafı temizlik — araç çıktısı temizleme ve compaction.
  • /resume — oturumlar JSONL olarak kaydedilir ve kaldığı yerden sürdürülebilir.

Bu sayfayı GitHub’da düzenle ↗