// dokumentacja openclaw

Context Engine w OpenClaw — zarządzanie kontekstem modelu

Czym jest Context Engine?

Context Engine zarządza sposobem, w jaki OpenClaw składa kontekst modelu przy każdym uruchomieniu. Decyduje, które wiadomości uwzględnić, podsumowuje starszą historię i obsługuje kontekst w granicach subagentów. OpenClaw dostarcza wbudowany silnik legacy, a wtyczki mogą oferować alternatywy.

Sprawdzanie aktywnego silnika

openclaw doctor
# lub bezpośrednia inspekcja konfiguracji:
cat ~/.openclaw/openclaw.json | jq '.plugins.slots.contextEngine'

Instalacja wtyczki Context Engine

# Instalacja z npm
openclaw plugins install @martian-engineering/lossless-claw

# Lub z lokalnej ścieżki (do developmentu)
openclaw plugins install -l ./my-context-engine

Jak to działa — cztery punkty cyklu życia

  1. Ingest — przetwarza nowe wiadomości, zapisując je i indeksując w niestandardowych magazynach danych
  2. Assemble — zwraca uporządkowane wiadomości mieszczące się w budżecie tokenów przed uruchomieniem modelu
  3. Compact — podsumowuje starszą historię, gdy okno kontekstowe się zapełnia
  4. After turn — operacje po uruchomieniu, takie jak utrwalanie lub kompaktowanie w tle

Cykl życia subagentów

Metoda onSubagentEnded wykonuje czyszczenie po zakończeniu sesji subagenta. Metoda prepareSubagentSpawn jest zarezerwowana do przyszłego użycia.

Rozszerzenie promptu systemowego

Metoda assemble może zwrócić ciąg systemPromptAddition, który jest dodawany na początku promptu systemowego. Umożliwia to dynamiczne wskazówki przywracania kontekstu.

Wbudowany silnik Legacy

  • Ingest: no-op — menadżer sesji obsługuje utrwalanie
  • Assemble: pass-through — istniejący pipeline sanityzacji, walidacji i ograniczania
  • Compact: deleguje do wbudowanego mechanizmu podsumowywania
  • After turn: no-op

Interfejs ContextEngine

Wymagane elementy interfejsu:

  • info — identyfikator silnika, nazwa, wersja, kontrola kompaktowania
  • ingest(params) — zapisanie pojedynczej wiadomości
  • assemble(params) — zbudowanie kontekstu dla uruchomienia modelu
  • compact(params) — podsumowanie lub redukcja kontekstu

Opcjonalne elementy: bootstrap, ingestBatch, afterTurn, prepareSubagentSpawn, onSubagentEnded, dispose.

Kontrola kompaktowania — ownsCompaction

Flaga ownsCompaction określa, czy wbudowane auto-kompaktowanie Pi pozostaje aktywne:

  • true — silnik przejmuje kompaktowanie; OpenClaw wyłącza auto-kompaktowanie Pi
  • false/nieokreślone — auto-kompaktowanie Pi może działać; metoda compact() silnika nadal wywoływana przy /compact i odzyskiwaniu po przepełnieniu

Konfiguracja

{
  "plugins": {
    "slots": {
      "contextEngine": "legacy"
    }
  }
}

Tylko jeden Context Engine jest aktywny podczas uruchomienia. Inne włączone wtyczki typu context-engine ładują się, ale nie wykonują, dopóki nie zostaną wybrane.