SuperAPI AI 工具集

claude code hooks configuration

编程与开发

查看项目

更新于 10-15 23:49

技能介绍

用途:该资料讲解如何为 Claude Code 配置生命周期钩子与事件处理器,覆盖 SessionStart、SessionEnd、Stop、PreToolUse、PostToolUse,并给出避免“Hook cancelled”错误的做法。

主要能力:说明各钩子的触发时机与默认超时(均为 60 秒),提供超时建议(SessionStart 120–300s、SessionEnd 60–120s、Stop 30–60s、PreToolUse 10–30s、PostToolUse 30–60s),以及“Hook cancelled”的根因与两种解法:后台子 shell 立即退出,或在配置中显式加 timeout。

使用方式:钩子配置在 .claude/settings.json,用户级为 ~/.claude/settings.json,项目级为 <project>/.claude/settings.json;每个钩子项可含 type、command、timeout 字段。查看配置:cat ~/.claude/settings.json | jq '.hooks';计时脚本:time bash ~/.claude/session-logger.sh;追踪慢操作:bash -x ~/.claude/session-logger.sh 2>&1 | head -50;修改后可用 /hooks 菜单重载。推荐后台写法为将慢操作包在 ( ... ) &>/dev/null & 中并 exit 0。

适用场景:会话启动时跑测试、linter、依赖检查;会话结束或 /clear 时记录日志、清理、保存状态;助手停止时做 git 状态检查;工具执行前后做校验与通知。

限制:资料未提供该工具/插件的安装命令、收费与价格信息及支持平台,均暂未提供;相关 starship 超时属于独立问题,需在 ~/.config/starship.toml 调整 command_timeout(默认 500ms)等配置。