[KongchangAI]
ConceptHooks机制 / 事件触发机制

Hooks

Hooks是一种事件驱动的自动化机制,通过监听特定触发事件(如文件保存、代码提交等)来自动执行预定义的操作或工作流。其核心特征包括:与开发流程深度集成、支持自定义触发条件与响应动作,以及无需人工干预即可完成测试、格式化、构建等任务。Hooks广泛应用于开发工具和IDE中,用于提升自动化程度和开发效率。

Core Facts

Timeline (last 90 days)

Sep 9

Hooks 支持的事件类型包括 Session Start/Setup、User Prompt Submit、Pre-tool-use/Post-tool-use 和 Context Compaction

Unverified50%

All Facts (20)

Verified

Hooks采用按需加载(懒加载)设计,只在触发时才加载到上下文中,平时不占据上下文空间

65%
Verified

Claude Code内置了Hooks(自动触发机制),支持事件驱动的自动化工作流

65%
Unverified

Hooks的执行分为同步和异步两种模式,同步模式会阻塞主流程直到执行完毕,异步模式在后台运行不阻塞主对话流程

90%
Unverified

Hooks 系统包含四种类型:Command、HTTP、Prompt(使用 Haiku 模型)和 Agent

90%
Unverified

Claude Code Hooks 被文章作者认为是一个被严重低估的功能

90%
Unverified

Claude Code Hooks中退出码0表示放行,退出码2表示硬拦截(AI不会重试),其他非零退出码表示软警告

90%
Unverified

Claude Code的Hooks机制是确定性的,每次都会执行,而Claude.md中的提示词指令是概率性的,可能被遗漏

85%
Unverified

Hooks和Skills的核心区别在于:Skill是模型主动调用的拉模式(Pull),Hook是外部系统被动触发的推模式(Push)

85%
Unverified

Hooks在Claude的推理过程之外运行(在宿主操作系统层面执行shell脚本),不消耗任何上下文token,对上下文窗口零成本

85%
Unverified

Claude Code 引入 Hooks 系统作为确定性自动化引擎,支持超过 15 种生命周期事件

85%
Unverified

Claude Code Hooks 的项目级别配置存储在项目根目录下,可随代码仓库一起版本管理;全局级别配置存储在用户主目录下

85%
Unverified

Claude Code一共提供了14个Hooks

85%
Unverified

Claude Code的Hooks设计继承了Git Hooks和CI/CD管道中事件驱动自动化的理念,但可以监听更丰富的事件类型,包括文件保存、会话开始、工具调用等

80%
Partially Verified

Claude Code提供了Hooks回调机制,允许开发者在Agent执行的关键节点(如启动、工具调用前后、停止、会话结束等)插入自定义逻辑

65%
Unverified

Cursor Hooks是一种事件驱动机制,当某个条件达成后自动执行命令、脚本或提示词

60%
Unverified

用好Hooks能减少大量不必要的返工,开发效率至少提升一倍

60%
Unverified

Hooks是程序化的硬约束,通过事件驱动机制强制执行,不依赖模型的自觉性,比CLAUDE.md的软约束方式更可靠

60%
Unverified

Claude Code Hooks 支持项目级别和全局级别两种配置作用域

60%
Unverified

Claude Code 支持 Hooks 功能,提供五种触发时机:PreToolUse、PostToolUse、OnToolError、Notification、OnPrompt

60%
Unverified

Hooks 支持的事件类型包括 Session Start/Setup、User Prompt Submit、Pre-tool-use/Post-tool-use 和 Context Compaction

50%

Source Articles