Claude Code干活终于会「出声」了!再也不用盯屏幕等完成

哈喽大家好,

我是阿星👋🏻

众所周知claudecode是干完活儿也不吭声的。一会儿一看结束没。

怎么让它每次干完活播报提示音。

除了可以 hook 配置中直接写 afplay,我看朋友小红书上的思路是先写脚本后hook,我用的是第二种------

先听效果------ 视频上传不了 原文

原理如下------

首先: Claude Code 执行操作时会触发"事件",你可以配置这些事件自动运行脚本。

其次: 通过在配置文件中设置 SessionStart(启动时)和 PostToolUse(完成任务时)等hook事件,分别播放不同的提示音来区分不同的工作状态。

简单说就是:Claude 干活的时候会"通知"你的脚本,脚本收到通知就播放声音。

制作铃声

这里我随便在剪映里生成了几个铃声👇

创建hook文件夹

放入hooks文件夹。如果你找不到这个文件夹创建一个就可以了。

bash 复制代码
mkdir -p /Users/xingyang/hooks

找自己claudecode对应的指定动作

软件是非常多个性的,一升级动作就变形了有的

所以我们需要自己找到自己版本的指定动作,和体操运动一样的

比如咱们要播放就需要一个动作一览表,也就是hook event

这个event的名字不同的版本还不一样,非常容易搞错

我一开始就是搞错事件名耽误半天

所以你必须找到你的claudecode支持的hook事件不能瞎写

说白了就是表演体操里的指定动作

怎么查询属于自己的指定动作呢?

bash 复制代码
#查询claude事件名的办法

/help
/hooks

类似于这样一个最下面就是你hook事件名

提取出来就是最下面的hook event

css 复制代码
Claude Code v1.0.72 实际支持的事件:
PreToolUse - 工具执行前
PostToolUse - 工具执行后
Notification - 发送通知时
UserPromptSubmit - 用户提交提示时
SessionStart - 新会话开始时

视频里的系哦啊过就是用的time.mp3一个铃声

当hook event------PostToolUse 被触发 → 播放 time.mp3

而这个PostToolUse代表的就是工具执行后。我们在claude里完成某件事时就会自动播放。

写个提示音播放脚本

我们让cc自动播放脚本,脚本也得存在才行。先让AI给我们写个脚本

首先创建脚本目录和文件:

bash 复制代码
# 创建脚本目录
mkdir -p /Users/xingyang/.local/bin

# 创建脚本文件
nano /Users/xingyang/.local/bin/claude-beep.sh

脚本内容超简单,就3行:

第一行 :告诉系统这是bash脚本

第二行 :记录日志,方便调试(可选)

第三行 :播放音频文件

bash 复制代码
#!/bin/bash
echo "Hook triggered at $(date): $1" >> /tmp/claude-hook.log
afplay "$1"

保存后给脚本执行权限:

bash 复制代码
chmod +x /Users/xingyang/.local/bin/claude-beep.sh

测试脚本是否工作:

bash 复制代码
# 手动测试播放
/Users/xingyang/.local/bin/claude-beep.sh /Users/xingyang/hooks/time.mp3

如果听到声音说明脚本正常,如果没声音检查:

  1. 音频文件路径是否正确
  2. 系统音量是否开启
  3. 可以试试用 afplay /Users/xingyang/hooks/time.mp3 直接测试音频

这样脚本就写好了,下一步就是配置 Claude Code 调用这个脚本。

告诉cc啥时候播提示音

所以我们解决了播放以后,还要解决啥时候安。所以需要复制下面代码后保存这个配置 👉 .claude/settings.json

注意这个settings.json必须是在.claude的根目录下否则可能读取不到

你可以根据自己的需求配置删减,比如下面这个就是带了好几个hooks。从我标 ⭐️⭐️⭐️的地方就是hook相关的代码。

所以你看👇下面这些直接复制就行了。路径换成你的。

css 复制代码
{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-947e50xxxxx",
    "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
    "ANTHROPIC_MODEL": "deepseek-chat",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1,
    "API_TIMEOUT_MS": 600000
  },
  "permissions": {
    "allow": [],
    "deny": []
  },

  ⭐️⭐️⭐️
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "/Users/xingyang/.local/bin/claude-beep.sh /Users/xingyang/hooks/time.mp3"
          }
        ],
    "UserPromptSubmit": [
      [{]([url](url))
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "/Users/xingyang/.local/bin/claude-beep.sh /Users/xingyang/hooks/gold.mp3"
          }
        ]
      }
    ]
      }
    ],
    "Notification": [
      {
        "matcher": "permission",
        "hooks": [
          {
            "type": "command",
            "command": "/Users/xingyang/.local/bin/claude-beep.sh /Users/xingyang/hooks/gold.mp3"
          }
        ]
      }
    ]
  }
}

现在重启 Claude Code

测试效果

  • 发送一条消息 → 应该听到 time .mp3
  • Claude 执行操作后 → 应该听到 time.mp3
  • 如果遇到不能播放的时候其实要排查的就是三个点了👇

关于报错

1、hook事件名错了,那可以现在终端测试一下音频是否能正常播放。

2、mp3位置放错了

3、你没有触发自己期待的事件 (hook event)但是又在期待发生

AI coding还有很多好玩的东西,我是阿星,我们下期再见。

相关推荐
Baihai_IDP1 小时前
并行智能体是否将重塑软件开发模式?
人工智能·程序员·ai编程
trsoliu1 小时前
2025年AI开发工具最新排行:前端开发者的智能助手选择指南
ai编程
JianZhen✓14 小时前
面试题拆解与分析1
ai编程
前端小万14 小时前
使用 AI 深度参与复杂业务开发
ai编程
蓝瑟15 小时前
AI时代程序员如何高效提问与开发工作?
前端·ai编程
极客密码17 小时前
充了20刀 Cursor Pro 的朋友看到我的方案沉默了...
aigc·ai编程·cursor
人工智能训练17 小时前
在ubuntu系统中如何将docker安装在指定目录
linux·运维·服务器·人工智能·ubuntu·docker·ai编程
用户40993225021219 小时前
Vue3响应式系统的底层原理与实践要点你真的懂吗?
前端·ai编程·trae
小虎AI生活20 小时前
王炸!新一代 AI 浏览器,GitHub 上 16.4k 高星的开源项目
ai编程·mcp·codebuddy
用户4099322502121 天前
Vue 3中reactive函数如何通过Proxy实现响应式?使用时要避开哪些误区?
前端·ai编程·trae