【Claude Code系列教程】 hooks

【Claude Code系列教程】 hooks了解如何通过注册 shell 命令来自定义和扩展 Claude Code 的行为 其实 claude code 的调度思路 和微软的 multiagents 框架 autogen 的思路 挺像的 虽然没有复用代码 Claude Code hooks 是用户自定义的 shell 命令 会在 Claude Code 生命周期的不同阶段执行 Hooks 提供了对 Claude Code 行为的确定性控制

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



了解如何通过注册 shell 命令来自定义和扩展 Claude Code 的行为。

其实claude code的调度思路,和微软的multiagents框架autogen的思路,挺像的。虽然没有复用代码。

Claude Code hooks 是用户自定义的 shell 命令,会在 Claude Code 生命周期的不同阶段执行。Hooks 提供了对 Claude Code 行为的确定性控制,确保某些操作总是执行,而不是依赖 LLM 自行决定是否执行。

要查看 hooks 的参考文档,请参阅 [Hooks reference]。

一些 hooks 的典型用例包括:

  • Notifications:自定义当 Claude Code 等待你输入或授权时的通知方式。
  • Automatic formatting:每次文件编辑后自动执行 prettier(用于 .ts 文件)、gofmt(用于 .go 文件)等。
  • Logging:记录和统计所有执行的命令,以满足合规性或调试需要。
  • Feedback:当 Claude Code 生成不符合你代码规范的代码时,提供自动反馈。
  • Custom permissions:阻止对生产文件或敏感目录的修改。

将这些规则编码为 hooks,而不是提示语(prompt)指令,你就把建议变成了每次都自动执行的应用级代码。

⚠️ 添加 hooks 时必须考虑安全影响,因为 hooks 会在 agent 循环中自动执行,并拥有你当前环境的权限。例如,恶意的 hooks 代码可能会窃取你的数据。在注册 hooks 之前,请务必审查其实现。

关于完整的安全**实践,请参见 hooks 参考文档中的 [Security Considerations]。


Claude Code 提供多个 hook 事件,它们在工作流的不同阶段触发:

  • PreToolUse:在工具调用之前运行(可以阻止调用)
  • PostToolUse:在工具调用完成后运行
  • Notification:当 Claude Code 发出通知时运行
  • Stop:Claude Code 响应结束时运行
  • Subagent Stop:subagent 任务完成时运行

每个事件会接收不同的数据,并可在不同层面控制 Claude 的行为。


本快速开始示例将添加一个 hook,用于记录 Claude Code 执行的 shell 命令。

Prerequisites

安装 ,用于命令行中处理 JSON。


运行 slash 命令,选择 PreToolUse hook 事件。

image.png

image.png

PreToolUse hooks 会在工具调用之前运行,并可阻止这些调用,同时给 Claude 提供修改建议。


选择 + Add new matcher…,仅在 Bash 工具调用时运行你的 hook。

输入 作为 matcher。

image.png

你也可以使用 来匹配所有工具。


选择 + Add new hook… 并输入以下命令:

 
       

image.png


在 storage location 处选择 User settings,因为你是将日志写入主目录。此 hook 将适用于所有项目,而不仅仅是当前项目。

image.png

然后按下 ,返回到 REPL。你的 hook 已经注册成功!

image.png


再次运行 ,或查看 ,你会看到如下配置:

 
         

请求 Claude 执行一个简单命令,如 ,然后查看日志文件:

 
          

image.png

你应该能看到如下条目:

 
          

在编辑后自动格式化 TypeScript 文件:

 
           

当 Claude 需要输入时,触发桌面通知:

 
            

阻止对敏感文件的修改:

 
             

  • 查看 hooks 的参考文档,请访问 Hooks reference
  • 阅读完整的安全**实践与安全指导,请参阅 Security Considerations in the hooks reference documentation
  • 查找故障排查步骤与调试技术,请访问 Debugging in the hooks reference documentation

小讯
上一篇 2026-04-06 21:24
下一篇 2026-04-06 21:22

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/219953.html