为 Claude Code、Codex 和 Gemini CLI 生成完成通知等提醒配置。

钩子是 AI 智能体在特定时刻运行的一条简短命令,比如完成回复时。这款免费工具帮你写好任务完成提醒等所需的钩子或内置设置。

选择你使用的智能体、希望收到提醒的时刻(完成回复或需要你批准),以及提醒方式。本页会生成对应的配置片段,注明应写入哪个文件,还可以将其合并到该文件的副本中。Claude Code 使用 Stop 和 Notification 钩子;Codex 和 Gemini CLI 各有对应的钩子。你输入的任何内容都不会离开浏览器。

最后更新:

Cowork Island

macOS 14 或更高版本。
Apple 芯片和 Intel 处理器。
免费版无需账户。

免费下载

选择提醒方式。

以下选项需要 JavaScript。如果未启用,本页会显示最常用的配置:Claude Code 完成回复或需要你处理时,在 Mac 上显示横幅。

使用哪个智能体?
在以下时刻提醒我
用什么方式?
提示音

这些提示音来自 Mac 的系统声音文件夹。

你的配置。

写入 ~/.claude/settings.json

将这些条目添加到文件的 "hooks" 对象中,与已有条目并列。不要替换整个文件,因为其中可能还保存着你的其他设置和其他工具的钩子。设置文件必须使用严格的 JSON 格式,不能有注释或末尾多余的逗号。更简单的做法是将当前文件的内容粘贴到下方的合并框中。

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "/usr/bin/osascript -e 'on run argv' -e 'display notification (item 1 of argv) with title (item 2 of argv) subtitle (item 3 of argv) sound name \"Glass\"' -e 'end run' 'Claude Code finished' 'Claude Code' \"${PWD##*/}\""
          }
        ]
      }
    ],
    "Notification": [
      {
        "matcher": "permission_prompt|elicitation_dialog|elicitation_url_dialog",
        "hooks": [
          {
            "type": "command",
            "command": "/usr/bin/osascript -e 'on run argv' -e 'display notification (item 1 of argv) with title (item 2 of argv) subtitle (item 3 of argv) sound name \"Funk\"' -e 'end run' 'Claude Code needs you' 'Claude Code' \"${PWD##*/}\""
          }
        ]
      }
    ]
  }
}
  • 在 Claude Code 中,权限提醒和已连接工具的输入请求会在提示出现约 6 秒后送达,打字会推迟提醒。这是 Claude Code 的 Notification 钩子的工作方式。其他提问可能不会触发这个钩子。
  • 完成提醒使用 Stop。每次 Claude 完成一条回复时都会触发,不只是长任务结束时。你中断 Claude 时不会触发。
  • 只有你在工作区信任对话框中确认信任后,Claude Code 才会运行该文件夹中的钩子。如果是工作用的 Mac,你的组织可能只允许使用其自己的钩子。
  • 如果已打开的会话没有应用更改,请重启该会话。

测试提醒。

将这一行粘贴到 Terminal 中,然后按 Return 键。它运行的命令与钩子将运行的命令相同。

/usr/bin/osascript -e 'on run argv' -e 'display notification (item 1 of argv) with title (item 2 of argv) subtitle (item 3 of argv) sound name "Glass"' -e 'end run' 'Claude Code finished' 'Claude Code' "${PWD##*/}"

允许“脚本编辑器”显示通知。这些横幅来自 macOS 的“脚本编辑器”应用,而 macOS 不会先询问你是否允许通知:在你允许之前,不会出现横幅,也不会提示原因。先运行一次测试命令,然后打开“系统设置”>“通知”,找到“脚本编辑器”,开启“允许通知”。

合并到当前文件中。

将当前文件的全部内容粘贴到这里,本页就会添加新条目。文件中已有的钩子条目保持原样,包括其他工具和 Cowork Island 的条目。如果你选择的是内置设置,新值会替换旧值,本页也会说明更改了哪一项。同一个选择合并两次,也不会重复添加。你粘贴的内容只会留在本页。

合并功能需要 JavaScript。如果未启用,请按上方说明手动添加条目。

如果你也在使用 Cowork Island。

Cowork Island 是本工具作者开发的 Mac 应用。连接 Claude Code、Codex 或 Gemini CLI 时,它会在同一批文件中添加自己的条目。这些条目与你现有的钩子并存。只要某个条目的命令中有任何位置包含 /.perch/(不区分大小写),应用就会将其视为自己的条目。移除和重新添加时,操作的是整个条目,而非单条命令。

  • 这里的每个配置片段都是独立条目,且绝不指向 ~/.perch/ 内部,因此重新安装或关闭 Cowork Island 都不会影响它。
  • 不要将这里的命令粘贴到 Cowork Island 的条目中,也不要将自己的脚本保存在 ~/.perch/ 中,否则应用会将其视为自己的内容。
  • Cowork Island 的集成处于开启状态时,不要手动删除它的条目,否则应用下次启动时会重新添加。
  • 两者可以并行运行。Claude Code 和 Codex 会同时运行所有匹配的钩子,Gemini CLI 则会等待所有钩子运行完毕。
  • 对于 Claude Code,权限提示的提醒使用 Notification 事件,绝不使用 PermissionRequest 钩子,因此绝不会替你回答请求。
  • 对于 Gemini CLI,本工具生成 AfterAgent 和 Notification 钩子,绝不生成 BeforeTool 钩子。

本页如何处理你的输入。

所有操作都在浏览器中完成。生成器不发出网络请求、不存储任何内容,也不设置 Cookie:你的选择、输入和粘贴内容都不会离开本页。只有点按“复制”时,内容才会写入剪贴板。ntfy 主题名称由浏览器内置的随机数生成器生成。与本站其他页面一样,本次访问本身会计入统计,具体见隐私政策(英文)。

免配置方案。

Cowork Island 是本工具作者开发的一款 Mac 应用。它把你的 AI 智能体会话汇集在刘海下方的面板中,显示每个会话的状态,让你一眼看清哪个会话需要你处理。有没有刘海都能用。

  • Claude Code 和应用在你的 Mac 上找到的工具会自动连接。Codex 会保持关闭,直到你在「设置」中开启它,并在 Codex 中允许 Cowork Island 的钩子运行。
  • 每个会话都会显示状态,等待你回应时会显示为「需要你处理」。默认情况下,小岛这时会自动展开,除非该会话所在的终端或应用已经在前台。
  • 会话完成时,小岛默认会展开 5 秒。
  • 对于 Claude Code,你可以在小岛上允许或拒绝某项操作,或回答选择题。在小岛上回答是免费的。对于其他工具,你可能需要在各自的应用或终端中作出回应。
  • 声音默认关闭,需要你手动开启。「需要审批」提示音免费;「会话完成」提示音属于 Pro 功能。应用本身不会显示 macOS 横幅通知。

免费版一次显示一张会话卡片。Pro 会显示你的所有会话,跳转回会话所在的窗口、标签页或窗格也是 Pro 功能。7 天 Pro 试用会自动开始,每台 Mac 仅限一次,无需填写支付信息。查看方案和安装指南。

免费下载

来源。

把下载链接发给自己,稍后使用。