🔔
Claude Codeでの作業完了通知方法まとめ
この記事は生成AIで書いたのかな?書いてないのかな?ドキドキクイズ!答えはこの記事の最後に!
Claude Codeでの作業完了通知方法
わしの作業完了通知方法は108まであるぞ(ない)。
/hooksを使う
これが至高(当社比)。環境はMacです。
Claude Codeで/hooks
してstop
選択して、音を出すコマンドを設定します
afplay /System/Library/Sounds/Glass.aiff
以下設定のスクショです。
Windowsではこの記事によると以下コマンドで音が出るという噂…(未確認)。
powershell.exe -c '(New-Object Media.SoundPlayer "C:\Windows\Media\chord.wav").PlaySync()'
鳴らす音を変える方法
最初に、音を確認します(ぬこぬこさんありがとう)。
for sound in /System/Library/Sounds/*.aiff; do name=$(basename "$sound" .aiff); echo "♪ $name"; afplay "$sound"; done
以下コマンドの <sound>
に、確認した中での気に入った音を入れます。
afplay /System/Library/Sounds/<sound>.aiff
VOICEVOXやAivisSpeechにしゃべらせる
コマンドに以下を設定しましょう。ずんだもんもOKです。
VOICEVOX
curl -s -X POST "localhost:50021/audio_query?speaker=1" --get --data-urlencode text="タスクガカンリョウシタノダ!" | jq --argjson accents "$(curl -s -X POST "localhost:50021/accent_phrases?speaker=1&is_kana=true" --get --data-urlencode text="タ'スクガ/カンリョウシ'タノダ")" '.accent_phrases = $accents' | curl -s -H "Content-Type: application/json" -X POST "localhost:50021/synthesis?speaker=1" -d @- > voicevox_task_done.wav && afplay voicevox_task_done.wav
AivisSpeech
curl -s -X POST "localhost:10101/audio_query?speaker=888753760" --get --data-urlencode text="タスクが完了したの!" | curl -s -H "Content-Type: application/json" -X POST "localhost:10101/synthesis?speaker=888753760" -d @- > aivis_task_done.wav && afplay aivis_task_done.wav
参考:ぬこぬこさんのポスト
sayコマンドを使う
省略します。
iTerms 2を使う
iTerms2をHomebrewでインストールします。
$ brew install iterms2
以下コマンドで設定します。
$ claude config set --global preferredNotifChannel terminal_bell
音が出なかったら、システム設定も見直す必要があるかもしれません。以下記事を参考にしましょう。
MCPサーバを使う
「ずんだもんの声で作業内容を完了通知してくれなきゃヤダヤダヤダ!」って人はMCPサーバとプロンプトチューニングをしましょう。
ただ、プロンプト頼みなので、確実に通知はしてくれないのだ(多分)。
MCPサーバの設定は以下です。
AivisSpeechのMCPサーバを使う方法もあります。
まとめ
/hooks
の登場により、Claude Codeだと/hooks
使うのが決定版になりそうです。iTerms2インストールしたのに1日で不要になりました。
追記:書くのすっかり忘れてましたが、この記事を書いたのは人間です。Lost in the last.
参考リンク
関連記事
変更履歴
- 2025/07/02 /hooksについて微修正
Discussion