ターミナルで Claude Code を動かしていると、別ウィンドウに目を移しているあいだに 応答が終わっている のに気づけず、待ち時間をムダにしたり、逆にまだ動いていると思い込んだりしがちです。デスクトップ通知も有効ですが、「音」で知らせると耳に残りやすいので、hooks でワークフローを自動化する を使って 応答が止まったタイミング でだけ短い音を鳴らす設定を試しました。
前提:hooks はどこに書くか
Claude Code の hook は JSON の hooks ブロックで定義します。スコープは次のどちらか(または併用)です。
| 置き場所 | 向き |
|---|---|
~/.claude/settings.json | マシン全体のデフォルト |
リポジトリの .claude/settings.json | そのプロジェクトだけ(チームで共有しやすい) |
個人的な音の好みならユーザーディレクトリ、チームで同じ挙動にしたいならプロジェクト側、という分け方がわかりやすいです。設定の詳細は hooks ガイド にまとまっています。
「終わった」ときに鳴らす:Stop イベント
ガイドの一覧にあるとおり、Stop は Claude が応答を終了したとき に発火します(ユーザーが割り込んだ場合は発火しません)。完了の合図に向いています。
最小例は macOS の afplay でシステム付属の AIFF を鳴らすだけです。
{
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "afplay /System/Library/Sounds/Glass.aiff"
}
]
}
]
}
}Glass.aiff の代わりに Blow.aiff や Ping.aiff など、好みの短い音に差し替えれば OK です。
設定を書いたら CLI で /hooks と入力し、hooks ブラウザ に Stop が載っているか確認するのがおすすめです。
注意:応答が区切れるたびに鳴る
ドキュメントにもある通り、Stop は タスクが一発で完結したときだけ ではなく、Claude が一回の応答を終えるたび に発火します。長いやりとりでは音が何度も鳴るので、集中を削る場合は Notification(入力待ちなど)との使い分けや、短い/控えめな音を選ぶとよさそうです。
Suno で「Claude Code っぽい」曲も作ってみた
作業用 BGM として、Suno で Claude Code をテーマにした曲をいくつか生成してみました。一覧のスクショは次のとおりです(タイトルに「クロードコードのひらめき」「コードの海を駆ける」などが並んでいます)。

公開ページの一例:クロードコードのひらめき(Suno)。
hooks に 長い楽曲ファイルのパス をそのまま渡すと、応答のたびにフル尺が流れてしまうので、実運用では 短くエクスポートした断片 か、やはり 数秒の効果音 の方が向いています(後述)。
音源ファイルは Google ドライブに置いて iframe で試聴
生成したファイルは Google ドライブに置き、ブログでは /preview 付き URL の <iframe> で埋め込んでいます(共有は「リンクを知っている全員」+閲覧者にしておく必要があります)。手順の詳細は このブログの別記事 にまとめてあります。
Suno 側の試聴(Drive)
ElevenLabs の効果音ジェネレーターも試した
ElevenLabs Sound Effects で、テキストから短い効果音を生成してみました。クオリティは面白いのですが、生成結果が長め になりがちで、Stop のたびに流すには さすがに長い と感じました。短いクリップに切り出して afplay に渡すならアリです。
プロンプトに 「claude code の完了音を作成して」 と入れたときの画面です。結果は #1〜#4 の4つに分かれ、それぞれ 1.0 秒 の波形になっています。画面上部には「最良の結果を得るには音を英語で説明してください」といったヒントも出ます。

ElevenLabs で作ったサンプル(Drive)
hooks 以外の拡張もざっくり
同じ Claude Code のドキュメント 周辺では、hooks 以外にも次のような拡張が紹介されています。
- Skills … 指示や再利用可能な手順をまとめる
- Subagents … 別コンテキストでタスクを実行
- Plugins … プラグインとして hooks などをパッケージ化
音のトリガーは hooks の決定的なタイミング に載せるのが向いていて、業務ルールやテンプレは Skills、分担は Subagents、という住み分けのイメージになります。
まとめ
- Claude Code の応答終了を見逃しにくくするには、
Stophook でafplayなど短い音 を鳴らすのが手軽。 - 設定は
~/.claude/settings.jsonか プロジェクトの.claude/settings.json。 - Suno や ElevenLabs で作った音源も試せるが、長尺は
Stopには向かないので 短く切る か システム音 が現実的。 - 公式:hooks でワークフローを自動化する
参考(Amazon): Claude 関連を検索