Stay Hungry,Stay Foolish!

Claude Code的hook

 

Claude Code的hook

https://code.claude.com/docs/en/hooks#exit-code-2

https://zhuanlan.zhihu.com/p/1950634615065809103

https://github.com/fanqingsong/claude-code-hooks-demo

https://github.com/fanqingsong/claude-code-hooks

 

什么是hook?

Claude Code 中的 hook 本质上是用户定义的 Shell 命令,它能够在 Claude Code 生命周期的各个“关键节点”自动执行。

用通俗的话来说:如果将 Claude Code 的工作流程比作一条繁忙的高速公路,那么 hook 就是沿途设置的智能交通信号灯,能够在预设的关键路口进行流量控制、安全检查和信息收集等操作。

为什么需要hook?

假设没有 hook,你想让 Claude Code 在每次编辑文件后都自动格式化代码,你就需要在每次对话时都主动提示它。但有了 hook,这个过程就变成了自动化的。

在 Claude Code 中,hook提供了确定性的控制机制,通过将规则和流程编码为应用程序级代码而非提示指令,hook 能够保证命令按预期执行,而不是依赖LLM的选择来运行它们。

Hook的常见应用场景

Hook 的应用场景非常灵活且广泛,以下是一些常见的应用示例:

应用场景具体功能示例
智能通知系统 • 当Claude Code需要你的输入时,自动发送桌面通知
• 集成邮件提醒、Slack消息等
自动代码格式化 • 每次文件编辑后自动运行prettier格式化.ts文件
• 对.go文件运行gofmt
• 自动修复markdown文件格式问题
日志记录与审计 • 跟踪和记录所有执行的命令
• 用于合规性检查和调试分析
代码质量反馈 • 当Claude Code生成不符合代码库约定的代码时提供自动反馈
• 集成代码检查工具和测试框架
安全与权限控制 • 阻止对生产文件或敏感目录的修改
• 实施自定义的安全策略

posted @ 2026-08-29 20:52  lightsong  阅读(3)  评论(0)    收藏  举报
千山鸟飞绝,万径人踪灭