核心功能
Hook
Hook 用来在 Claude CLI 的关键事件发生时自动执行命令。它适合做轻量自动化,比如记录任务日志、在工具调用前做检查、在会话结束时整理状态,或者把某些固定动作接到 Agent 工作流里。
当前 Hook 功能仅支持 Claude CLI。如果你使用 ZCode Agent、Codex CLI、Gemini CLI 或 OpenCode CLI,这些框架暂时不会读取这里的 Hook 配置。

管理 Hook
进入 设置 -> Hook 后,可以看到已经配置好的 Hook。列表会展示触发事件、匹配器和要执行的命令,右侧可以编辑或删除。
常见事件包括:
- UserPromptSubmit:用户提交提示词时触发。
- PreToolUse:工具调用前触发,常用于做权限、日志或安全检查。
- PostToolUse:工具调用后触发,常用于记录结果或同步状态。
- SessionEnd:会话结束时触发,适合清理临时状态或写入日志。
建议把 Hook 命令写得短、可重复执行,并设置合理的超时时间。不要把破坏性命令放进 Hook,尤其是会自动删除文件、提交代码或修改线上环境的命令。
新建 Hook
点击右上角 新建 Hook,填写事件、匹配器、命令和超时时间,然后保存。

字段说明:
- 事件:选择 Hook 触发时机,例如
PreToolUse或SessionEnd。 - 匹配器:限制 Hook 只在特定工具或模式下触发,例如
Bash、Write、Edit。部分事件不需要填写。 - 命令:真正执行的 shell 命令。
- 超时时间:命令允许运行的秒数,避免 Hook 卡住任务。
保存后回到列表,点击 刷新 确认 Hook 已经出现。后续要调整逻辑,可以直接点列表右侧的编辑按钮。
适合用 Hook 的场景
- 记录每次提示词提交和工具调用,便于回看任务过程。
- 在运行
Bash前写入审计日志。 - 在文件写入前做轻量检查。
- 在会话结束时输出本次任务状态。
- 接入团队已有的本地脚本,让 Claude CLI 工作流更稳定。
如果只是保存一段常用提示词,用 Command 更直接;如果需要让 Agent 学会一套完整流程,用 Skill 更合适。Hook 更适合“事件发生时自动执行”的动作。