[功能] Hook 钩子可视化管理:在客户端内查看、编辑、启用/禁用 hooks 配置
Author: yy1588133Created Sep 18, 2026Updated Sep 18, 2026
提交前确认
你想要什么
希望客户端提供 Hook 管理界面:可以直接在 GUI 中查看当前项目/全局的 hooks 配置(settings.json 中的 hooks 字段),并支持增删改、启用/禁用,以及触发时机的选择(PreToolUse、PostToolUse、UserPromptSubmit、SessionStart、Stop 等)。
为什么需要
Claude Code 的 hooks 是自动化工作流的核心能力(例如工作流 Guard、提交前检查、通知等),但当前只能在客户端外手动编辑 settings.json:
- JSON 嵌套结构(event → matcher → hooks 数组)手写容易出错,格式错误会导致 hook 静默失效;
- 无法一眼看到当前生效了哪些钩子、来自全局还是项目级配置;
- 调试困难——hook 执行失败或被阻止时,用户很难定位是哪条规则。
目前绕过方式是直接用编辑器改 settings.json,或依赖 MCP 工具(如 Reqable 自带的 hook 管理 API)逐条操作,效率低且不直观。
期望行为
- 设置页新增「Hooks」标签页,按事件类型分组展示所有已配置钩子;
- 区分来源(用户级
~/.claude/settings.jsonvs 项目级.claude/settings.json); - 支持图形化新增/编辑/删除钩子条目,写入时校验 JSON 结构;
- 每条钩子可单独启用/禁用(等价于临时注释掉该条目);
- 若能进一步显示 hook 的最近触发记录/执行状态(成功/失败/被阻止),会更实用。
现状与限制
当前客户端没有 hook 相关的管理入口,settings.json 中的 hooks 配置对用户不可见,只能在文件系统层面维护,与客户端「降低 Claude Code 使用门槛」的定位有差距。
参考与补充
- 官方 hooks 文档:https://code.claude.com/docs/en/hooks
- 类似思路:VS Code 各类 settings GUI、以及部分第三方客户端(如 Reqable 对自身 hook 的可视化管理)。
Source: NanmiCoder/cc-haha