openclaw hooks
管理代理钩子(用于 /new、/reset 和网关启动等命令的事件驱动自动化)。直接使用 openclaw hooks 等同于 openclaw hooks list。
相关:钩子 - 插件钩子
列出 hooks
openclaw hooks 和运行 openclaw hooks --json 时,使用的列表操作与
openclaw hooks list 相同。该命令会从工作区、托管目录、额外目录和内置目录中发现 hooks。
--eligible:仅显示满足要求的 hooks。--json:结构化输出。-v, --verbose:包含一个“缺失”列,显示未满足的要求。
获取 hook 信息
<name> 是 hook 名称或 hook key(例如 session-memory)。显示源、文件/处理程序路径、主页、事件,以及每项要求(可执行文件、环境、配置、操作系统)的状态。
检查资格
启用钩子
hooks.internal.entries.<name>.enabled = true,并且还会将 hooks.internal.enabled 主开关打开(网关在至少配置了一个内部钩子之前不会加载任何内部钩子处理器)。如果钩子不存在、由插件管理,或不具备启用资格(缺少依赖),则会失败。
由插件管理的钩子会在 hooks list 中显示为 plugin:<id>,并且不能在此处启用/禁用;请改为启用或禁用其所属插件。
启用后请重启网关(macOS 菜单栏应用重启,或在开发环境中重启你的网关进程),以便重新加载钩子。
禁用钩子
hooks.internal.entries.<name>.enabled 设置为 false。随后重启网关。
安装和更新钩子包
openclaw hooks install / openclaw hooks update 仍然可作为已弃用的别名使用,它们会打印警告并转发到 plugins 命令。
- Npm 规格仅限注册表:包名加上可选的精确版本或 dist-tag。不接受 Git/URL/file 规格和 semver 范围。依赖安装在项目本地运行,并使用
--ignore-scripts。 - 裸规格和
@latest会保持在稳定发布轨道;如果 npm 解析到预发布版本,OpenClaw 会停止并要求你显式选择加入(@beta、@rc,或精确的预发布版本)。 - 支持的归档格式:
.zip、.tgz、.tar.gz、.tar。 -l, --link会链接本地目录而不是复制它(会将其添加到hooks.internal.load.extraDirs);被链接的钩子包是来自运维配置目录的受管钩子,而不是工作区钩子。--pin会将 npm 安装记录为共享 SQLite 状态中的精确解析结果name@version。- 安装会将包复制到
~/.openclaw/hooks/<id>,在hooks.internal.entries.*下启用其钩子,并在共享 SQLite 状态中记录安装来源。 - 如果已存储的完整性哈希与获取到的制品不再匹配,OpenClaw 会发出警告并在继续之前提示;可传入全局
--yes跳过提示(例如在 CI 中)。
内置钩子
使用
openclaw hooks enable <hook-name> 启用任意内置钩子。完整详情、配置键和默认值: 内置钩子。
command-logger 日志文件
说明
hooks list --json、info --json和check --json会直接将结构化 JSON 输出到 stdout。