拒绝死盯屏幕!教你给 Claude Code 加上“语音提示音”,让Claude Code主动报备,提示/完成全知道

6 阅读4分钟

前言

最近大家都在用 Claude Code (Anthropic 官方出的 CLI 工具) 来写代码。不得不说,它的 Agent 能力确实强,但也带来了一个新的烦恼:

它太爱提问了! 😩

"Claude wants to run this command..." (等待授权) "Cost estimation..." (等待确认) "Thinking..." (长时间思考)

如果你不盯着屏幕,它就会一直卡在确认界面;如果你盯着屏幕,又浪费了宝贵的摸鱼时间。

今天分享一个硬核技巧,给你的 Claude 加上“语音提示”。不管是它是停下来问你问题,还是任务全部跑完,都能“滴”一声喊你回来搬砖。

我们不写任何脚本不装 Node.js 环境,只用 Claude Code 原生的配置文件 hooks 功能来实现!


Claude Code CLI 原生配置

如果你习惯直接在终端使用 claude 命令,请修改 CLI 的全局配置文件。

1. 找到配置文件

配置文件通常名为 config.json (部分版本可能是 settings.json),位于 .claude 隐藏文件夹下:

  • 🪟 Windows:
    C:\Users\你的用户名\.claude\config.json
    (或者在资源管理器地址栏输入 %USERPROFILE%\.claude\ 快速进入)

  • 🍎 macOS:
    ~/.claude/config.json
    (在终端输入 open ~/.claude/ 可打开文件夹)

  • 🐧 Linux:
    ~/.claude/config.json

2. 添加 Hooks 配置

用文本编辑器打开该文件,在 JSON 的一级层级下添加 hooks 字段。

请将下方代码中的 【在这里填入提示命令】 替换为文章后半部分提供的具体系统命令

{
  "hooks": {
    "Stop": [
      {
        "matcher": "permission",
        "hooks": [
          {
            "type": "command",
            "command": "【在这里填入你喜欢的提示命令】"
          }
        ]
      }
    ],
    "Notification": [
      {
        "matcher": "permission",
        "hooks": [
          {
            "type": "command",
            "command": "【在这里填入你喜欢的提示命令】"
          }
        ]
      }
    ]
  },
  // 其它配置
}

🎵 核心干货:各大系统提示音命令大全

这是注入灵魂的一步! 请根据你的操作系统,挑选一条最心仪的指令填入配置。 无论你是想要极简的蜂鸣音优雅的系统提示音,还是想整点“花活”来段超级玛丽的通关 BGM,甚至直接让电脑化身**“贾维斯”**用语音向你汇报……这里统统都能满足你!

🪟 Windows (PowerShell)

Windows 的可玩性最高,依赖 PowerShell 调用 .NET 库。

注意: 填入 JSON 时,外层用双引号,内层命令参数请务必使用单引号,防止转义错误。

音效类型JSON 中应填写的 Command 值 (复制这一列)效果描述
1. 蜂鸣 (Beep)powershell -c "[System.Console]::Beep(800, 500)"发出 800赫兹 持续 0.5秒 的机械音(主板报警风)。
2. 系统提示音powershell -c "[System.Media.SystemSounds]::Asterisk.Play()"推荐。播放系统默认的“星号”提示音(通常是“叮”)。可选:Beep, Exclamation, Hand, Question等。
3. 播放 WAVpowershell -c "(New-Object Media.SoundPlayer 'C:\\Sounds\\notify.wav').PlaySync()"自定义党推荐。播放本地 WAV 文件(注意路径用双反斜杠 \\)。.SoundPlayer不支持 MP3,只支持 WAV。
4. 语音合成 (TTS)powershell -c "Add-Type -A System.Speech; (New-Object System.Speech.Synthesis.SpeechSynthesizer).Speak('Master, waiting for command')"极客风。直接让电脑开口说话喊你。

🍎 macOS (Terminal / Zsh)

Mac 的命令行音频支持最优雅,无需额外配置。

音效类型JSON 中应填写的 Command 值 (复制这一列)效果描述
1. 系统提示音tput bel触发 iTerm2 或终端配置的默认提示音。
2. 播放系统音效afplay /System/Library/Sounds/Glass.aiff推荐。清脆悦耳的玻璃声。可选:Ping, Hero, Submarine, Submarine等。
3. 播放任意文件afplay '/Users/yourname/Music/alert.mp3'支持 MP3, WAV, AIFF 等几乎所有格式。
4. 语音合成 (TTS)say 'Claude needs permission'推荐。直接语音播报,可用 say -v Samantha 'Hello' 换人声。

🐧 Linux (Ubuntu / Debian / CentOS)

Linux 取决于你的桌面环境和音频驱动,推荐使用 paplay

音效类型JSON 中应填写的 Command 值 (复制这一列)效果描述
1. 蜂鸣 (Beep)echo -e "\a"触发终端模拟器的响铃(部分发行版默认静音)。
2. 播放系统音效paplay /usr/share/sounds/freedesktop/stereo/complete.oga推荐 (PulseAudio)。大多数现代发行版(Ubuntu等)通用。
3. 播放 WAVaplay /path/to/file.wavmpg123 /path/to/file.mp3最底层 ALSA 驱动,仅支持 WAV。播放 MP3 通常需要安装 mpg123ffmpeg
4. 语音合成 (TTS)spd-say 'Attention please'需要安装 speech-dispatcher,或者用 espeak "Done"

⚡️ 最终效果演示 (以 Mac 语音为例)

假设你配置了 say "Sir, permission required"

  1. 你在终端输入:claude "重构一下登录模块"
  2. 你切出去回微信。
  3. Claude 分析完代码,准备修改文件,停在确认界面。
  4. 你的电脑突然传来标准的 Siri 语音:"Sir, permission required."
  5. 你淡定切回终端,敲个 y,深藏功与名。

image.png

快去试试吧!让你的 Claude 变成真正的 AI 助理。 🚀