Langsung ke konten utama

openclaw hooks

Kelola hook agen (otomatisasi berbasis peristiwa untuk perintah seperti /new, /reset, dan startup gateway). Menjalankan openclaw hooks tanpa subperintah setara dengan openclaw hooks list. Terkait:

Daftar Semua Hook

openclaw hooks list
Daftarkan semua hook yang ditemukan dari direktori workspace, managed, extra, dan bundled. Opsi:
  • --eligible: Tampilkan hanya hook yang memenuhi syarat
  • --json: Keluarkan sebagai JSON
  • -v, --verbose: Tampilkan informasi terperinci termasuk persyaratan yang belum terpenuhi
Contoh output:
Hooks (4/4 ready)

Ready:
  🚀 boot-md ✓ - Jalankan BOOT.md saat startup gateway
  📎 bootstrap-extra-files ✓ - Sisipkan file bootstrap workspace tambahan selama bootstrap agen
  📝 command-logger ✓ - Catat semua peristiwa perintah ke file audit terpusat
  💾 session-memory ✓ - Simpan konteks sesi ke memori saat perintah /new atau /reset dijalankan
Contoh (verbose):
openclaw hooks list --verbose
Menampilkan persyaratan yang belum terpenuhi untuk hook yang tidak memenuhi syarat. Contoh (JSON):
openclaw hooks list --json
Mengembalikan JSON terstruktur untuk penggunaan terprogram.

Dapatkan Informasi Hook

openclaw hooks info <name>
Tampilkan informasi terperinci tentang hook tertentu. Argumen:
  • <name>: Nama hook atau kunci hook (misalnya, session-memory)
Opsi:
  • --json: Keluarkan sebagai JSON
Contoh:
openclaw hooks info session-memory
Output:
💾 session-memory ✓ Siap

Simpan konteks sesi ke memori saat perintah /new atau /reset dijalankan

Detail:
  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/automation/hooks#session-memory
  Events: command:new, command:reset

Requirements:
  Config: ✓ workspace.dir

Periksa Kelayakan Hook

openclaw hooks check
Tampilkan ringkasan status kelayakan hook (berapa banyak yang siap vs. tidak siap). Opsi:
  • --json: Keluarkan sebagai JSON
Contoh output:
Hooks Status

Total hooks: 4
Ready: 4
Not ready: 0

Aktifkan Hook

openclaw hooks enable <name>
Aktifkan hook tertentu dengan menambahkannya ke konfigurasi Anda (~/.openclaw/openclaw.json secara default). Catatan: Hook workspace dinonaktifkan secara default sampai diaktifkan di sini atau di konfigurasi. Hook yang dikelola oleh plugin menampilkan plugin:<id> di openclaw hooks list dan tidak dapat diaktifkan/dinonaktifkan di sini. Aktifkan/nonaktifkan plugin sebagai gantinya. Argumen:
  • <name>: Nama hook (misalnya, session-memory)
Contoh:
openclaw hooks enable session-memory
Output:
✓ Hook diaktifkan: 💾 session-memory
Yang dilakukan:
  • Memeriksa apakah hook ada dan memenuhi syarat
  • Memperbarui hooks.internal.entries.<name>.enabled = true di konfigurasi Anda
  • Menyimpan konfigurasi ke disk
Jika hook berasal dari <workspace>/hooks/, langkah opt-in ini wajib dilakukan sebelum Gateway akan memuatnya. Setelah diaktifkan:
  • Mulai ulang gateway agar hook dimuat ulang (mulai ulang app bilah menu di macOS, atau mulai ulang proses gateway Anda dalam dev).

Nonaktifkan Hook

openclaw hooks disable <name>
Nonaktifkan hook tertentu dengan memperbarui konfigurasi Anda. Argumen:
  • <name>: Nama hook (misalnya, command-logger)
Contoh:
openclaw hooks disable command-logger
Output:
⏸ Hook dinonaktifkan: 📝 command-logger
Setelah dinonaktifkan:
  • Mulai ulang gateway agar hook dimuat ulang

Catatan

  • openclaw hooks list --json, info --json, dan check --json menulis JSON terstruktur langsung ke stdout.
  • Hook yang dikelola plugin tidak dapat diaktifkan atau dinonaktifkan di sini; aktifkan atau nonaktifkan plugin pemiliknya sebagai gantinya.

Instal Paket Hook

openclaw plugins install <package>        # ClawHub terlebih dahulu, lalu npm
openclaw plugins install <package> --pin  # sematkan versi
openclaw plugins install <path>           # path lokal
Instal paket hook melalui penginstal plugin terpadu. openclaw hooks install masih berfungsi sebagai alias kompatibilitas, tetapi menampilkan peringatan deprecation dan meneruskan ke openclaw plugins install. Spesifikasi npm bersifat khusus registri (nama paket + versi exact opsional atau dist-tag). Spesifikasi Git/URL/file dan rentang semver ditolak. Penginstalan dependensi dijalankan dengan --ignore-scripts demi keamanan. Spesifikasi polos dan @latest tetap berada di jalur stabil. Jika npm menyelesaikan salah satu dari itu ke versi prerelease, OpenClaw berhenti dan meminta Anda untuk melakukan opt-in secara eksplisit dengan tag prerelease seperti @beta/@rc atau versi prerelease exact. Yang dilakukan:
  • Menyalin paket hook ke ~/.openclaw/hooks/<id>
  • Mengaktifkan hook yang diinstal di hooks.internal.entries.*
  • Mencatat penginstalan di hooks.internal.installs
Opsi:
  • -l, --link: Tautkan direktori lokal alih-alih menyalin (menambahkannya ke hooks.internal.load.extraDirs)
  • --pin: Catat penginstalan npm sebagai name@version exact yang telah diselesaikan di hooks.internal.installs
Arsip yang didukung: .zip, .tgz, .tar.gz, .tar Contoh:
# Direktori lokal
openclaw plugins install ./my-hook-pack

# Arsip lokal
openclaw plugins install ./my-hook-pack.zip

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

# Tautkan direktori lokal tanpa menyalin
openclaw plugins install -l ./my-hook-pack
Paket hook yang ditautkan diperlakukan sebagai hook managed dari direktori yang dikonfigurasi operator, bukan sebagai hook workspace.

Perbarui Paket Hook

openclaw plugins update <id>
openclaw plugins update --all
Perbarui paket hook berbasis npm yang dilacak melalui pembaru plugin terpadu. openclaw hooks update masih berfungsi sebagai alias kompatibilitas, tetapi menampilkan peringatan deprecation dan meneruskan ke openclaw plugins update. Opsi:
  • --all: Perbarui semua paket hook yang dilacak
  • --dry-run: Tampilkan apa yang akan berubah tanpa menulis
Ketika hash integritas tersimpan ada dan hash artefak yang diambil berubah, OpenClaw menampilkan peringatan dan meminta konfirmasi sebelum melanjutkan. Gunakan --yes global untuk melewati prompt dalam menjalankan CI/non-interaktif.

Hook Bundled

session-memory

Menyimpan konteks sesi ke memori saat Anda menjalankan /new atau /reset. Aktifkan:
openclaw hooks enable session-memory
Output: ~/.openclaw/workspace/memory/YYYY-MM-DD-slug.md Lihat: dokumentasi session-memory

bootstrap-extra-files

Menyisipkan file bootstrap tambahan (misalnya AGENTS.md / TOOLS.md lokal monorepo) selama agent:bootstrap. Aktifkan:
openclaw hooks enable bootstrap-extra-files
Lihat: dokumentasi bootstrap-extra-files

command-logger

Mencatat semua peristiwa perintah ke file audit terpusat. Aktifkan:
openclaw hooks enable command-logger
Output: ~/.openclaw/logs/commands.log Lihat log:
# Perintah terbaru
tail -n 20 ~/.openclaw/logs/commands.log

# Cetak rapi
cat ~/.openclaw/logs/commands.log | jq .

# Filter berdasarkan aksi
grep '"action":"new"' ~/.openclaw/logs/commands.log | jq .
Lihat: dokumentasi command-logger

boot-md

Menjalankan BOOT.md saat gateway dimulai (setelah channel dimulai). Peristiwa: gateway:startup Aktifkan:
openclaw hooks enable boot-md
Lihat: dokumentasi boot-md