openclaw hooks

Verwalte Agent Hooks (ereignisgesteuerte Automatisierungen für Befehle wie /new, /reset und Gateway-Start).

Verwandte Themen:

Alle Hooks auflisten

openclaw hooks list

Listet alle gefundenen Hooks aus Workspace-, Managed- und Bundled-Verzeichnissen auf.

Optionen:

  • --eligible: Zeigt nur einsatzbereite Hooks (Anforderungen erfüllt)
  • --json: Ausgabe als JSON
  • -v, --verbose: Zeigt detaillierte Infos inkl. fehlender Anforderungen

Beispielausgabe:

Hooks (4/4 ready)

Ready:
  🚀 boot-md ✓ - Run BOOT.md on gateway startup
  📝 command-logger ✓ - Log all command events to a centralized audit file
  💾 session-memory ✓ - Save session context to memory when /new command is issued
  😈 soul-evil ✓ - Swap injected SOUL content during a purge window or by random chance

Beispiel (verbose):

openclaw hooks list --verbose

Zeigt fehlende Anforderungen für nicht einsatzbereite Hooks.

Beispiel (JSON):

openclaw hooks list --json

Gibt strukturiertes JSON zur programmatischen Nutzung aus.

Hook-Informationen abrufen

openclaw hooks info <name>

Zeigt detaillierte Informationen zu einem bestimmten Hook.

Argumente:

  • <name>: Hook-Name (z.B. session-memory)

Optionen:

  • --json: Ausgabe als JSON

Beispiel:

openclaw hooks info session-memory

Ausgabe:

💾 session-memory ✓ Ready

Save session context to memory when /new command is issued

Details:
  Source: openclaw-bundled
  Path: /path/to/openclaw/hooks/bundled/session-memory/HOOK.md
  Handler: /path/to/openclaw/hooks/bundled/session-memory/handler.ts
  Homepage: https://docs.openclaw.ai/hooks#session-memory
  Events: command:new

Requirements:
  Config: ✓ workspace.dir

Hook-Bereitschaft prüfen

openclaw hooks check

Zeigt eine Zusammenfassung des Hook-Status (wie viele bereit vs. nicht bereit).

Optionen:

  • --json: Ausgabe als JSON

Beispielausgabe:

Hooks Status

Total hooks: 4
Ready: 4
Not ready: 0

Hook aktivieren

openclaw hooks enable <name>

Aktiviert einen bestimmten Hook, indem er zu deiner Config (~/.openclaw/config.json) hinzugefügt wird.

Hinweis: Hooks, die von Plugins verwaltet werden, zeigen plugin:<id> in openclaw hooks list und können hier nicht aktiviert/deaktiviert werden. Aktiviere/deaktiviere stattdessen das Plugin.

Argumente:

  • <name>: Hook-Name (z.B. session-memory)

Beispiel:

openclaw hooks enable session-memory

Ausgabe:

✓ Enabled hook: 💾 session-memory

Was passiert dabei:

  • Prüft, ob der Hook existiert und einsatzbereit ist
  • Setzt hooks.internal.entries.<name>.enabled = true in deiner Config
  • Speichert die Config auf der Festplatte

Nach dem Aktivieren:

  • Starte das Gateway neu, damit die Hooks neu geladen werden (Menüleisten-App auf macOS neu starten oder Gateway-Prozess im Dev-Modus neu starten).

Hook deaktivieren

openclaw hooks disable <name>

Deaktiviert einen bestimmten Hook durch Aktualisierung deiner Config.

Argumente:

  • <name>: Hook-Name (z.B. command-logger)

Beispiel:

openclaw hooks disable command-logger

Ausgabe:

⏸ Disabled hook: 📝 command-logger

Nach dem Deaktivieren:

  • Starte das Gateway neu, damit die Hooks neu geladen werden

Hooks installieren

openclaw hooks install <path-or-spec>

Installiert ein Hook-Pack aus einem lokalen Ordner/Archiv oder von npm.

Was passiert dabei:

  • Kopiert das Hook-Pack nach ~/.openclaw/hooks/<id>
  • Aktiviert die installierten Hooks in hooks.internal.entries.*
  • Speichert die Installation unter hooks.internal.installs

Optionen:

  • -l, --link: Verlinkt ein lokales Verzeichnis statt es zu kopieren (fügt es zu hooks.internal.load.extraDirs hinzu)

Unterstützte Archive: .zip, .tgz, .tar.gz, .tar

Beispiele:

# Lokales Verzeichnis
openclaw hooks install ./my-hook-pack

# Lokales Archiv
openclaw hooks install ./my-hook-pack.zip

# NPM-Paket
openclaw hooks install @openclaw/my-hook-pack

# Lokales Verzeichnis verlinken statt kopieren
openclaw hooks install -l ./my-hook-pack

Hooks aktualisieren

openclaw hooks update <id>
openclaw hooks update --all

Aktualisiert installierte Hook-Packs (nur npm-Installationen).

Optionen:

  • --all: Aktualisiert alle verfolgten Hook-Packs
  • --dry-run: Zeigt, was sich ändern würde, ohne zu schreiben

Mitgelieferte Hooks

session-memory

Speichert den Session-Kontext im Memory, wenn du /new ausführst.

Aktivieren:

openclaw hooks enable session-memory

Ausgabe: ~/.openclaw/workspace/memory/YYYY-MM-DD-slug.md

Siehe: session-memory Dokumentation

command-logger

Protokolliert alle Command-Events in einer zentralen Audit-Datei.

Aktivieren:

openclaw hooks enable command-logger

Ausgabe: ~/.openclaw/logs/commands.log

Logs anzeigen:

# Letzte Befehle
tail -n 20 ~/.openclaw/logs/commands.log

# Formatiert ausgeben
cat ~/.openclaw/logs/commands.log | jq .

# Nach Aktion filtern
grep '"action":"new"' ~/.openclaw/logs/commands.log | jq .

Siehe: command-logger Dokumentation

soul-evil

Tauscht den injizierten SOUL.md-Inhalt mit SOUL_EVIL.md während eines Purge-Fensters oder zufällig aus.

Aktivieren:

openclaw hooks enable soul-evil

Siehe: SOUL Evil Hook

boot-md

Führt BOOT.md beim Gateway-Start aus (nachdem die Channels gestartet sind).

Events: gateway:startup

Aktivieren:

openclaw hooks enable boot-md

Siehe: boot-md Dokumentation