openclaw hooks
エージェントフック(/new、/reset、Gateway起動などのコマンドに対するイベント駆動オートメーション)を管理します。
関連:
全フックの一覧表示
openclaw hooks list
ワークスペース、マネージド、バンドルディレクトリから検出されたすべてのフックを一覧表示します。
オプション:
--eligible: 要件を満たしたフックのみ表示--json: JSON出力-v, --verbose: 不足している要件を含む詳細情報を表示
出力例:
Hooks (4/4 ready)
Ready:
🚀 boot-md ✓ - Run BOOT.md on gateway startup
📎 bootstrap-extra-files ✓ - Inject extra workspace bootstrap files during agent bootstrap
📝 command-logger ✓ - Log all command events to a centralized audit file
💾 session-memory ✓ - Save session context to memory when /new command is issued
例(詳細):
openclaw hooks list --verbose
不適格なフックの不足要件を表示します。
例(JSON):
openclaw hooks list --json
プログラム的に使用するための構造化JSONを返します。
フック情報の取得
openclaw hooks info <name>
特定のフックの詳細情報を表示します。
引数:
<name>: フック名(例:session-memory)
オプション:
--json: JSON出力
例:
openclaw hooks info session-memory
出力:
💾 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/automation/hooks#session-memory
Events: command:new
Requirements:
Config: ✓ workspace.dir
フック適格性の確認
openclaw hooks check
フックの適格性ステータスの概要(準備完了数 vs 未準備数)を表示します。
オプション:
--json: JSON出力
出力例:
Hooks Status
Total hooks: 4
Ready: 4
Not ready: 0
フックの有効化
openclaw hooks enable <name>
特定のフックを設定(~/.openclaw/config.json)に追加して有効化します。
補足: プラグインが管理するフックはopenclaw hooks listでplugin:<id>と表示され、ここでは有効/無効にできません。代わりにプラグインを有効/無効にしてください。
引数:
<name>: フック名(例:session-memory)
例:
openclaw hooks enable session-memory
出力:
✓ Enabled hook: 💾 session-memory
実行内容:
- フックが存在し適格であることを確認
- 設定の
hooks.internal.entries.<name>.enabled = trueを更新 - 設定をディスクに保存
有効化後:
- フックが再読み込みされるようGatewayを再起動(macOSではメニューバーアプリの再起動、または開発環境ではGatewayプロセスの再起動)。
フックの無効化
openclaw hooks disable <name>
設定を更新して特定のフックを無効化します。
引数:
<name>: フック名(例:command-logger)
例:
openclaw hooks disable command-logger
出力:
⏸ Disabled hook: 📝 command-logger
無効化後:
- フックが再読み込みされるようGatewayを再起動
フックのインストール
openclaw hooks install <path-or-spec>
openclaw hooks install <npm-spec> --pin
ローカルフォルダ/アーカイブまたはnpmからフックパックをインストールします。
npm仕様はレジストリのみ(パッケージ名 + オプションの正確なバージョンまたはdist-tag)です。Git/URL/ファイル仕様やsemver範囲は拒否されます。依存関係のインストールは安全のため--ignore-scriptsで実行されます。
ベア仕様と@latestは安定トラックに留まります。npmがこれらをプレリリースに解決した場合、OpenClawは停止して@beta/@rcなどのプレリリースタグや正確なプレリリースバージョンでの明示的なオプトインを求めます。
実行内容:
- フックパックを
~/.openclaw/hooks/<id>にコピー - インストールされたフックを
hooks.internal.entries.*で有効化 hooks.internal.installsにインストールを記録
オプション:
-l, --link: コピーする代わりにローカルディレクトリをリンク(hooks.internal.load.extraDirsに追加)--pin: npmインストールをhooks.internal.installsに正確な解決済みname@versionとして記録
サポートされるアーカイブ: .zip, .tgz, .tar.gz, .tar
例:
# ローカルディレクトリ
openclaw hooks install ./my-hook-pack
# ローカルアーカイブ
openclaw hooks install ./my-hook-pack.zip
# NPMパッケージ
openclaw hooks install @openclaw/my-hook-pack
# コピーせずにローカルディレクトリをリンク
openclaw hooks install -l ./my-hook-pack
フックの更新
openclaw hooks update <id>
openclaw hooks update --all
インストール済みフックパックを更新します(npmインストールのみ)。
オプション:
--all: 追跡されている全フックパックを更新--dry-run: 書き込みせずに変更内容を表示
保存済みの整合性ハッシュが存在し、取得したアーティファクトのハッシュが変わった場合、OpenClawは警告を表示して確認を求めます。CI/非対話モードではグローバルの--yesでプロンプトをバイパスできます。
バンドルフック
session-memory
/new実行時にセッションコンテキストをメモリに保存します。
有効化:
openclaw hooks enable session-memory
出力先: ~/.openclaw/workspace/memory/YYYY-MM-DD-slug.md
参照: session-memory documentation
bootstrap-extra-files
agent:bootstrap時に追加のブートストラップファイル(例:モノレポローカルのAGENTS.md / TOOLS.md)を挿入します。
有効化:
openclaw hooks enable bootstrap-extra-files
参照: bootstrap-extra-files documentation
command-logger
すべてのコマンドイベントを集中監査ファイルに記録します。
有効化:
openclaw hooks enable command-logger
出力先: ~/.openclaw/logs/commands.log
ログの確認:
# 最近のコマンド
tail -n 20 ~/.openclaw/logs/commands.log
# 整形表示
cat ~/.openclaw/logs/commands.log | jq .
# アクションでフィルタ
grep '"action":"new"' ~/.openclaw/logs/commands.log | jq .
参照: command-logger documentation
boot-md
Gateway起動時(チャネル起動後)にBOOT.mdを実行します。
イベント: gateway:startup
有効化:
openclaw hooks enable boot-md