openclaw hooks

管理智能体钩子(事件驱动的自动化,用?/new/reset 等命令和网关启动)?

相关链接?

列出所有钩?

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
  • 保存配置到磁?

启用后:

  • 重启网关以重新加载钩子(macOS 上的菜单栏应用重启,或重启开发中的网关进程)?

禁用钩子

openclaw hooks disable <name>

通过更新配置来禁用特定钩子?

*参数?

  • <name>:钩子名称(例如 command-logger?

*示例?

openclaw hooks disable command-logger

*输出?

?Disabled hook: 📝 command-logger

禁用后:

  • 重启网关以重新加载钩?

安装钩子

openclaw hooks install <path-or-spec>
openclaw hooks install <npm-spec> --pin

从本地文件夹/归档?npm 安装钩子包?

npm 规格**仅限注册?*(包名称 + 可选版?标签)。Git/URL/文件规格被拒绝。依赖安装为安全起见使用 --ignore-scripts 运行?

*它的工作原理?

  • 将钩子包复制?~/.openclaw/hooks/<id>
  • ?hooks.internal.entries.* 中启用已安装的钩?
  • ?hooks.internal.installs 中记录安?

*选项?

  • -l, --link:链接本地目录而不是复制(将其添加?hooks.internal.load.extraDirs?
  • --pin:在 hooks.internal.installs 中将 npm 安装记录为精确解析的 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 文档

bootstrap-extra-files

?agent:bootstrap 期间注入额外的引导文件(例如 monorepo 本地?AGENTS.md / TOOLS.md)?

*启用?

openclaw hooks enable bootstrap-extra-files

*参见? bootstrap-extra-files 文档

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 文档

boot-md

网关启动后(频道启动后)运行 BOOT.md?

事件gateway:startup

启用?

openclaw hooks enable boot-md

*参见? boot-md 文档