cc-notify-hooks — Agent 时代的注意力调度器。短通知即时打断,长通知卡片化兜底,让 Claude Code 与 Codex CLI 不再空转等待。
这些场景每天都在发生。
Claude 需要你点一下"允许",你切到浏览器看了篇文章,回来发现它等了你半小时。
跑了个大重构,你去喝咖啡。回来一看——10 分钟前就完成了,白等了。
3 个终端窗口 3 个任务。你根本记不住哪个需要你介入,哪个还在自己跑。
开个会回来,发现 Agent 在第 3 分钟就卡住了,剩下 57 分钟纯浪费。
v2.3.0 起通知会先归一成同一批字段。短渠道只显示项目和一句摘要,长渠道第一行也放摘要,再补项目、事件、工具和 Session。
飞书使用消息卡片,企业微信 / 钉钉 / Slack / Discord 使用近似模板。
GPT-5 · /Users/mariozzj/Documents/project/cc-notify-hooks · Mario5Air
在 Agent 时代,瓶颈不是算力,是你的注意力。
cc-notify-hooks 把注意力的分配权还给你。
不需要盯着终端。不需要来回切窗口。Agent 需要你的时候,它会找到你。
推送前检查你是否已响应。回来了就停,没回来就升级。
Claude Code 或 Codex 需要权限确认 / 等待输入 / 任务完成,通知会先归一成项目、事件、工具、Session 和摘要。
macOS 系统弹窗、Telegram 消息、Bark / Pushover / ntfy 手机推送。只显示 Agent、状态、项目和一句短摘要,不塞权限细节。
✓ 你看到通知回来了?后面的推送自动取消。
企业微信 / 飞书 / 钉钉 / Slack / Discord 群消息。飞书使用消息卡片,其余渠道用近似 Markdown / embed 模板,第一行就是短摘要。
✓ 短通知已经解决了?长通知不会再发。零噪音。
每个渠道的延迟可独立调整。不用的不开,开了的不烦。
Claude Code 与 Codex CLI 双支持,插件一键安装或独立脚本部署。
在 Claude Code 中执行:
/plugin marketplace add MarioZZJ/cc-notify-hooks
/plugin install cc-notify-hooks@cc-notify-hooks
安装后运行 /cc-notify-hooks:config 启动交互式配置向导。
添加 marketplace 并安装插件:
codex plugin marketplace add MarioZZJ/cc-notify-hooks --ref v2.3.0
codex plugin add cc-notify-hooks@cc-notify-hooks
在 ~/.codex/config.toml 启用 hooks(必需):
[features]
codex_hooks = true
Marketplace 位于仓库根目录,实际插件目录是 plugins/cc-notify-hooks/。
Codex hook 会从插件缓存目录定位脚本;不要把 hook command 改成 ./scripts/...,它会按当前会话目录解析。
git clone https://github.com/MarioZZJ/cc-notify-hooks.git
cd cc-notify-hooks
bash install.sh # 交互式选择目标
bash install.sh claude # 直接装到 Claude Code
bash install.sh codex # 直接装到 Codex CLI
安装脚本会交互式引导你选择渠道、输入凭证,自动写入对应工具的配置。
用户回来操作,排队中的推送全部作废。不会重复打扰。
子任务不会触发推送,只有主 Agent 的关键事件才会通知你。
同类事件 10 秒内只推一次,高频操作不会变成通知轰炸。
每个渠道独立设置延迟。Telegram 5 秒、Bark 30 秒、飞书 10 分钟,你说了算。
macOS 用户装完即用,系统原生通知,不需要注册任何服务。
同一份配置覆盖 Claude Code 与 Codex CLI。两套清单,两个 marketplace 入口,一次配置全部生效。
两行命令,从此你的 Claude Code 与 Codex CLI 永不空转。