cblCyberbrain Light docs

Claude Code: Hooks und MCP

Light erreicht den Agenten auf zwei Wegen. Der Hook gibt die Regeln vor dem ersten Prompt in jede Sitzung. Der MCP-Server lässt den Agenten während der Arbeit suchen und Notizen schreiben.

cbl install

$ cbl install
1 hook(s) in /pfad/zum/projekt/.claude/settings.json pointing at /home/du/.cargo/bin/cbl

Es fügt genau einen Eintrag hinzu und lässt den Rest der Datei in Ruhe:

{
  "hooks": {
    "SessionStart": [
      {
        "_managedBy": "cyberbrain-light",
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "/home/du/.cargo/bin/cbl",
            "args": ["hook", "session-start"],
            "timeout": 30
          }
        ]
      }
    ]
  }
}

An der Markierung _managedBy erkennt cbl install --undo seine eigenen Einträge; fremde fasst es nicht an. Eingetragen wird der absolute Pfad des Programms, das install ausgeführt hat. Wer cbl verschiebt oder neu installiert, ruft cbl install noch einmal auf. Seit 0.2.0 hat der Hook eine Zeitgrenze von 30 Sekunden (Vorgabe von Claude Code: 600 s), und ein alter PreCompact-Eintrag aus 0.1 wird entfernt.

Der Hook beim Sitzungsstart

Bei jeder neuen Sitzung ruft Claude Code cbl hook session-start auf, und Light antwortet mit den Ringen 0 und 1: den festen Regeln und dem aktuellen Ablauf. Dabei gelten zwei Grenzen:

Ring 0 und 1 kurz halten. Sie kosten in jeder Sitzung.

Der MCP-Server

Für das aktuelle Projekt bei Claude Code anmelden:

$ claude mcp add cyberbrain-light -- cbl mcp

oder als Projektdatei .mcp.json, die das ganze Team teilt:

{
  "mcpServers": {
    "cyberbrain-light": { "command": "cbl", "args": ["mcp"] }
  }
}

Der Server spricht MCP über stdio, beantwortet initialize und seit 0.2.0 auch server/discover und zustandslose Anfragen aus dem Protokoll 2026-07-28. Er bietet vier Werkzeuge:

Werkzeug Argumente Wirkung
recall query, n (Vorgabe 8), ring Stichwortsuche in Ring 2 bis 4 (0 und 1 nur, wenn ring sie nennt), Treffer mit Zitat
recall_id ein Zitat wie r2-a91f2c33e1bd die ganze Notiz dahinter
write ring (2, 3 oder 4), kind, name, body Notiz schreiben oder aktualisieren; die Tags bleiben dabei erhalten
status Notizen je Ring, Index, Budget der Ringe 0 und 1

write lehnt Ring 0 und 1 ab. Die gehören der Person, die das Projekt führt; das Werkzeug sagt, man solle den Text vorschlagen oder cbl write --ring 0 … selbst ausführen.

Die Argumente der Werkzeuge kommen vom Modell, und das Modell liest alles, was in seinem Kontext steht, auch Text aus Webseiten und Dateien. Dass Ring 0 und 1 für den Agenten gesperrt sind, verhindert, dass eine Prompt Injection die Regeln umschreibt, mit denen jede spätere Sitzung beginnt.