Claude Code の待機と完了を通知する:Hooks を安全に試す

AI Router Oct 9, 2026

長いコーディング作業中にターミナルを離れると、Agent が許可待ちのまま止まっていることがあります。Claude Code の Hooks は、特定イベントに応じてコマンドを実行する仕組みで、デスクトップ通知を組み合わせられます。イベントや入力形式は変更される可能性があるため、古い記事の JSON をそのまま貼らず、現在の公式ドキュメントを参照してください。

通知したいイベントを選ぶ

まず必要なのが「作業完了」なのか「入力や許可を待っている状態」なのかを分けます。Claude Code の Hooks リファレンスで、そのバージョンが提供するイベントと発火条件を確認します。イベントの意味が曖昧なまま設定すると、通知が多すぎたり重要な停止を見逃したりします。

小さなローカルコマンドを作る

macOS、Windows、Linux では通知コマンドが異なります。まず Claude Code と無関係に、ターミナルからテスト通知を一度出します。メッセージには作業名など必要最小限の情報だけを含め、プロンプト全文やファイル内容、秘密情報を通知に渡さないようにします。

Hook 設定を検証する

公式の設定例に沿ってプロジェクト設定またはユーザー設定へ追加し、テスト用リポジトリで実際のイベントを発生させます。ログを確認し、成功時・許可待ち・キャンセル時に意図した回数だけ通知されるか調べます。実行ファイルのパス、権限、シェル差異で失敗することがあるため、まず一つのイベントに限定してください。

通知の安全性と集中を守る

Hooks はローカルコマンドを起動するため、出所が分からない設定をコピーしてはいけません。スクリプトの内容を確認し、不要になった設定は削除します。通知をロック画面に表示する場合は、端末を共有する人に作業内容が見えないかも考慮します。

制限

Hook は Agent の安全確認を代替せず、許可待ちを自動承認する仕組みでもありません。Claude Code のイベント仕様は変わり得ます。公式リファレンスとバージョン履歴を確認し、実際に使う OS 上でテストしてください。

公式資料

公式資料1