Sparround

Arxitektura: agent döngəsi

Agentin içində sehr yoxdur — bir döngə var. Hər növbədə eyni beş addım təkrarlanır:

  • sistem promptu yığılır — kimlik, alət təlimatları, skill siyahısı, kontekst faylları, yaddaş
  • provayder seçilir — hansı model, hansı API açarı
  • modelə sorğu gedir — bütün söhbət tarixçəsi ilə birlikdə
  • model ya cavab verir, ya alət çağırır — alət çağırışı icra olunur, nəticə söhbətə geri qoyulur
  • nəticə sessiyaya yazılır — SQLite bazasına

Model alət çağırmağı dayandıranda döngə bitir və sən cavabı görürsən.

KomponentMəsuliyyətiHarada saxlanır
Prompt builderSistem promptunu təbəqələrlə yığır: kimlik → alətlər → skill-lər → kontekst faylları → yaddaşRuntime
Provider resolutionModel adını API açarı və endpoint-ə çevirir, fallback zəncirini idarə edirconfig.yaml, .env, auth.json
Tool registryOnlarla aləti toolset-lərə qruplaşdırır və modelə sxem kimi təqdim edirRuntime
Session storageSöhbətləri saxlayır və tam mətn axtarışı (FTS5) verir~/.hermes/state.db

Eyni nüvə üç prosesdə işləyir: CLI (interaktiv terminal), gateway (messaging platformaları üçün fon prosesi) və subagentlər (deleqasiya zamanı yaradılan təmiz nüsxələr). Hər profil özünün HERMES_HOME, konfiqurasiya, yaddaş, sessiya və gateway prosesini alır — yəni bir maşında bir-birinə qarışmayan bir neçə agent saxlaya bilərsən.

Niyə bu vacibdir: kontekst pəncərəsi hər növbədə yenidən doldurulur. Uzun sessiyada söhbət böyüdükcə hər sorğu bahalaşır — buna görə Hermes-də sıxılma (compression), prompt keşi və yaddaş limitləri var. Bunları "Token və xərc" mövzusunda açacağıq.

Praktika. Bir sessiya işlət, sonra hermes prompt-size ilə sistem promptunun bayt bölgüsünə bax: alət sxemləri, skill siyahısı və kontekst faylları neçə bayt tutur? Hazır sayılır: ən böyük üç payı adlandıra bilirsən və bilirsən hansını söndürmək olar.

📚 Mənbələr və sənədlər