Ana içeriğe atla

openclaw hooks

Ajan hooks’larını yönetin ( /new, /reset gibi komutlar ve gateway başlangıcı için olay güdümlü otomasyonlar). İlgili:

Tüm Hooks’ları Listeleme

openclaw hooks list
Çalışma alanı, yönetilen ve paketlenmiş dizinlerden keşfedilen tüm hooks’ları listeler. Seçenekler:
  • --eligible: Yalnızca uygun hooks’ları gösterir (gereksinimler karşılanmış)
  • --json: JSON olarak çıktı verir
  • -v, --verbose: Eksik gereksinimler dahil ayrıntılı bilgileri gösterir
Örnek çıktı:
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
Örnek (ayrıntılı):
openclaw hooks list --verbose
Uygun olmayan hooks’lar için eksik gereksinimleri gösterir. Örnek (JSON):
openclaw hooks list --json
Programatik kullanım için yapılandırılmış JSON döndürür.

Hook Bilgilerini Alma

openclaw hooks info <name>
Belirli bir hook hakkında ayrıntılı bilgi gösterir. Argümanlar:
  • <name>: Hook adı (ör. session-memory)
Seçenekler:
  • --json: JSON olarak çıktı verir
Örnek:
openclaw hooks info session-memory
Output:
💾 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

Hooks Uygunluğunu Kontrol Etme

openclaw hooks check
Hook uygunluk durumunun özetini gösterir (kaçının hazır olduğu vs. hazır olmadığı). Seçenekler:
  • --json: JSON olarak çıktı verir
Örnek çıktı:
Hooks Status

Total hooks: 4
Ready: 4
Not ready: 0

Bir Hook’u Etkinleştirme

openclaw hooks enable <name>
Belirli bir hook’u yapılandırmanıza (~/.openclaw/config.json) ekleyerek etkinleştirir. Not: Eklentiler tarafından yönetilen hooks’lar openclaw hooks list içinde plugin:<id> olarak görünür ve buradan etkinleştirilemez/devre dışı bırakılamaz. Bunun yerine eklentiyi etkinleştirin/devre dışı bırakın. Argümanlar:
  • <name>: Hook adı (ör. session-memory)
Örnek:
openclaw hooks enable session-memory
Output:
✓ Enabled hook: 💾 session-memory
Ne yapar:
  • Hook’un var olup olmadığını ve uygunluğunu kontrol eder
  • Yapılandırmanızdaki hooks.internal.entries.<name>.enabled = true alanını günceller
  • Yapılandırmayı diske kaydeder
Etkinleştirdikten sonra:
  • Hooks’ların yeniden yüklenmesi için gateway’i yeniden başlatın (macOS’ta menü çubuğu uygulamasını yeniden başlatın veya geliştirme ortamında gateway sürecini yeniden başlatın).

Disable a Hook

openclaw hooks disable <name>
Yapılandırmanızı güncelleyerek belirli bir hook’u devre dışı bırakır. Argümanlar:
  • <name>: Hook adı (ör. command-logger)
Örnek:
openclaw hooks disable command-logger
Output:
⏸ Disabled hook: 📝 command-logger
Devre dışı bıraktıktan sonra:
  • Hooks’ların yeniden yüklenmesi için gateway’i yeniden başlatın

Hooks Yükleme

openclaw hooks install <path-or-spec>
Yerel bir klasörden/arşivden veya npm’den bir hook paketi yükler. Npm özellikleri yalnızca registry (paket adı + isteğe bağlı sürüm/etiket) içindir. Git/URL/file özellikleri reddedilir. Bağımlılık kurulumları güvenlik için --ignore-scripts ile çalıştırılır. Ne yapar:
  • Hook paketini ~/.openclaw/hooks/<id> içine kopyalar
  • Yüklenen hooks’ları hooks.internal.entries.* içinde etkinleştirir
  • Kurulumu hooks.internal.installs altında kaydeder
Seçenekler:
  • -l, --link: Kopyalamak yerine yerel bir dizini bağlar (hooks.internal.load.extraDirs içine ekler)
Desteklenen arşivler: .zip, .tgz, .tar.gz, .tar Örnekler:
# Local directory
openclaw hooks install ./my-hook-pack

# Local archive
openclaw hooks install ./my-hook-pack.zip

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

# Link a local directory without copying
openclaw hooks install -l ./my-hook-pack

Hooks Güncelleme

openclaw hooks update <id>
openclaw hooks update --all
Yüklü hook paketlerini günceller (yalnızca npm kurulumları). Seçenekler:
  • --all: İzlenen tüm hook paketlerini günceller
  • --dry-run: Yazmadan neyin değişeceğini gösterir

Paketlenmiş Hooks

session-memory

/new verdiğinizde oturum bağlamını belleğe kaydeder. Etkinleştir:
openclaw hooks enable session-memory
Çıktı: ~/.openclaw/workspace/memory/YYYY-MM-DD-slug.md Bkz.: session-memory dokümantasyonu

bootstrap-extra-files

agent:bootstrap sırasında ek bootstrap dosyaları (örneğin monorepo-yerel AGENTS.md / TOOLS.md) ekler. Etkinleştir:
openclaw kancaları bootstrap-extra-files özelliğini etkinleştirir
Bkz.: bootstrap-extra-files dokümantasyonu

command-logger

Tüm komut olaylarını merkezi bir denetim dosyasına kaydeder. Etkinleştir:
openclaw hooks enable command-logger
Çıktı: ~/.openclaw/logs/commands.log Günlükleri görüntüleme:
# Recent commands
tail -n 20 ~/.openclaw/logs/commands.log

# Pretty-print
cat ~/.openclaw/logs/commands.log | jq .

# Filter by action
grep '"action":"new"' ~/.openclaw/logs/commands.log | jq .
Bkz.: command-logger dokümantasyonu

boot-md

Gateway başlatıldığında (kanallar başladıktan sonra) BOOT.md çalıştırır. Etkinleştir: Olaylar: gateway:startup
openclaw hooks enable boot-md
Bkz.: boot-md dokümantasyonu