Claude Code Hooks

Claude Code Hooks、可視化。

Claude Code hooksは、Claude Codeライフサイクルのあらゆる重要イベント(ツール使用前、ツール使用後、プロンプト送信時、エージェント停止時、通知送信時)で決定論的なシェルコマンドを実行できるようにします。AgentsRoomは、数十のClaude Codeエージェント、数十のプロジェクトにまたがって、すべてのhook発火をリアルタイムで見守れるビジュアルコマンドセンターです。

HooksはAnthropic公式の、Claude Codeに決定論的な自動化、ガードレール、監査証跡、カスタムサイドエフェクトを追加する方法です。AgentsRoomはあなたのhooksを置き換えません。本物のClaude Code CLIを実行するので、.claude/settings.jsonで設定したすべてのhookは意図通りに動作し続けます。AgentsRoomが加えるのは可視性です:エージェント別、プロジェクト別、実行別に、あらゆるhookトリガーを確認できるライブダッシュボード。

Claude Code hooksとは何か?

Claude Code hooksは、Claude Codeがエージェントセッション中の特定のポイントで自動的に実行するユーザー定義のシェルコマンドです。.claude/settings.json(共有、gitコミット済み)または.claude/settings.local.json(個人用、gitignored)で設定し、Claude Codeエージェントの動作を決定論的に制御できます。プロンプトが確率的であるのに対し、hookは100%決定論的です:マッチするイベントが発火するたびに必ず実行され、例外はありません。

HooksはAnthropicのガードレール、自動化、テレメトリ、監査ログ、カスタム統合のニーズへの回答です。Claude Code hooksを使って、編集後に自動的にコードをフォーマットしたり、危険なコマンドの実行前にブロックしたり、すべてのツール呼び出しをファイルにログ出力したり、エージェントが入力待ちになったときにデスクトップ通知を送信したり、セッション終了時にCIジョブをトリガーしたり、すべてのプロンプトをオブザーバビリティバックエンドにストリーミングしたりできます。記述できるあらゆるシェルコマンドをClaude Code hookに配線できます。

Hooksはプロジェクト自体に存在するため(.claude/settings.jsonはgitコミットされる)、あなたのコードベースと共に移動します。チームのすべての開発者、そしてそのプロジェクトから生成されたすべてのAIエージェントは、同じセーフティネットを継承します。AgentsRoomはこのモデルを最後まで尊重します:デスクトップアプリはhooksを書き換えず、本物のClaude Code CLIを子プロセスとして実行するため、あなたのhook設定は自動的に取り込まれ、ターミナルからclaude codeを実行するのと同じように動作します。

Claude Codeの6つのhookイベント

すべてのClaude Codeエージェントセッションは、明確に定義されたポイントでhookイベントを発火します。それぞれのイベントが何を意味し、何ができるかを解説します。

PreToolUse

PreToolUse hookは、Claude Codeが任意のツール(Bash、Edit、Write、Read、Grepなど)を実行する前に発火します。ガードレールを配置する最適な場所です:危険なコマンドをブロックしたり、破壊的な操作に確認を要求したり、プロジェクト固有のルールを強制したり、実行前にツール引数を書き換えたりできます。hookからゼロ以外の終了コードを返すことで、ツール呼び出し全体をブロックできます。PreToolUseは安全性を重視するチームにとって一番のClaude Code hookです。

PostToolUse

PostToolUse hookは、任意のClaude Codeツールが完了した直後に発火します。ここで自動後処理を配線します:すべてのEdit後にフォーマッタ(Prettier、Black、rustfmt)を実行したり、すべてのWrite後にリンターをトリガーしたり、ファイルが変更されたらchangelogを更新したり、テレメトリイベントをプッシュしたりできます。PostToolUseは、Claude Codeをコードベースを見つけた時よりきれいに保つ規律あるチームメンバーに変える、定番の主力hookです。

UserPromptSubmit

UserPromptSubmit hookは、新しいプロンプトがClaude Codeエージェントに送信されるたびに発火します。監査とコンプライアンスのために全プロンプトをログ出力したり、オンザフライでプロンプトを書き換えたり(コンテキスト注入、シークレット編集)、リクエストを異なるモデルにルーティングしたり、命名規則を強制したりできます。AgentsRoomのマルチエージェントダッシュボードと組み合わせると、UserPromptSubmitはすべてのClaude Codeエージェントに送信されたすべての指示の完全な監査証跡を提供します。

Stop

Stop hookは、Claude Codeエージェントセッションが終了したとき(作業完了またはキャンセル)に発火します。クリーンアップジョブを実行し、トラッキングシステムに最終サマリーをプッシュし、アーティファクトをコミットし、セッション終了を人間に通知するための適切な場所です。AgentsRoomは独自の通知システムでStop hookを補完するため、カスタムhookとAgentsRoomのデスクトップ+モバイルプッシュ通知の両方から通知を受け取れます。

Notification

Notification hookは、Claude Codeがシステム通知を送信するとき(通常、エージェントがユーザー入力を待っているか、長時間実行タスクが完了したとき)に発火します。Slack、Discord、Telegram、メール、または任意のwebhookに通知をルーティングできます。AgentsRoomはすでにClaude Code通知をマルチエージェントダッシュボードとスマートフォンのプッシュ通知としてネイティブに表面化しているため、Notification hookはその上にカスタム統合を追加する完璧な場所です。

SubagentStop

SubagentStop hookは、Claude Codeサブエージェントが作業を終えて親に制御を返したときに発火します。.claude/agents/*.mdで定義されたClaude Codeサブエージェントを使って専門タスクを委任している場合、SubagentStopで各サブエージェントが何をしたかをログ出力したり、出力を集約したり、フォローアップステップをトリガーしたりできます。AgentsRoom内では、SubagentStopイベントがライブエージェントタイムラインに表示されるため、各Claude Codeセッション内でどのサブエージェントが実行されたかを正確に確認できます。

Claude Code Hooksが重要な理由

Hooksは、Claude Codeを印象的なAIから、チーム全体が頼れる本番品質のコーディングエージェントへと変えます。

決定論的な安全ガードレール

プロンプトは確率的で、迂回される可能性があります。Claude Code hooksは常に実行される決定論的なシェルコマンドです。PreToolUse hookは、エージェントが推論をどう表現しても、あらゆるrm -rf、あらゆるpush --force、あらゆる破壊的なマイグレーションをブロックできます。これが安全クリティカルなClaude Codeデプロイメントのゴールドスタンダードです。

ゼロエフォートの自動化

Claude Code hooksをフォーマッタ、リンター、テストランナー、型チェッカー、ビルドスクリプトに配線しましょう。エージェントが行うすべての編集は、CIパイプラインが実行するのと同じチェックをトリガーします——ローカルで、即座に、自動的に。あなたのClaude Codeエージェントは、フォーマッタの実行を忘れない自己規律あるコントリビューターになります。

完全な監査証跡

すべてのプロンプト、すべてのツール呼び出し、すべてのセッションの開始と停止をClaude Code hooksでログ出力できます。それをAgentsRoomのビジュアルタイムラインと組み合わせれば、すべてのAIコーディングエージェントの行動の完全な監査証跡が得られます——コンプライアンスの厳しいチーム、セキュリティ意識の高い企業、観測可能なAI開発に真剣に取り組むすべての人にとって不可欠です。

チーム全体の規約

.claude/settings.jsonはgitにコミットされるため、単一のClaude Code hooksセットがチームのすべての開発者とプロジェクトから生成されるすべてのAIエージェントに対して同じ規約を強制します。新しいチームメンバーはリポジトリをクローンした瞬間にガードレールを継承します。AIコーディングチーム全体の動作を1つのプルリクエストでアップグレードしましょう。

ライブhookオブザーバビリティ

Claude Code hooksはイベントを生成します。AgentsRoomはそれらのイベントをビジュアルフィードに変換します:すべてのhookトリガー、すべてのツール呼び出し、すべてのステータス変化が、エージェント別・プロジェクト別にライブストリーミングされます。もうログをtailする必要はありません——Claude Codeエージェント群が動く様子をリアルタイムで見守れます。

監視から監督へシフト

Hooksがなければ、Claude Codeの実行はすべてのツール呼び出しを見守ることを意味します。Hooksがあれば、監視を決定論的なコードに委任し、例外レベルで監督できます。AgentsRoomはこれを増幅します:hook保護されたすべてのClaude Codeエージェントを一度に見渡し、注意を要する何かが発生したときにだけ介入します。

Claude Code Hooks + AgentsRoom

AgentsRoomはClaude Codeおよびその他のAIコーディングCLIのためのビジュアルコマンドセンターです。Claude Codeをフォークせず、hooksを再実装せず、ツール呼び出しをインターセプトしません。本物のClaude Code CLIを完全なxterm.jsターミナル内で子プロセスとして実行するため、.claude/settings.jsonまたは.claude/settings.local.jsonで定義したすべてのhookはAnthropicが設計した通りに動作します——妥協なし、驚きなし、見えないミドルウェアなし。

AgentsRoomが加えるのはスケールと可視性です。数十のClaude Codeエージェントを並列に実行し、数十のプロジェクトにまたがり、それぞれが独自のhook設定を持ち、すべてのhookトリガーを1つのダッシュボードで確認できます。AgentsRoomのエージェント別通知、モバイルコンパニオンアプリ、リアルタイムステータス追跡と組み合わせると、Claude Code hooksはAIコーディング運用全体のファーストクラスのオブザーバビリティ層になります。

本物のClaude Code CLIを実行

AgentsRoomは完全なxterm.jsターミナル内で本物のclaude CLIプロセスを生成します。.claude/settings.json、.claude/settings.local.json、またはユーザーレベル設定で構成された任意のhookは、ターミナルからClaude Codeを実行したのとまったく同じように自動的に発火します。パッチなし、書き換えなし、忠実度の損失なし。

マルチエージェント群全体のhookイベント

hookを有効にした10、20、50のClaude Codeエージェントを並列に実行できます。AgentsRoomのマルチエージェントダッシュボードは、すべてのエージェントのhookトリガーされた通知とステータス変化を同時に表面化します。あなたのPreToolUseガードレール、PostToolUseフォーマッタ、Stopハンドラーは、すべて艦隊規模で動作します。

クロスプロジェクトhook可視性

AgentsRoom内のすべてのプロジェクトは、独自の.claude/settings.jsonとそれゆえ独自のClaude Code hook設定を持ちます。サイドバーはプロジェクト全体のライブステータスを集約するため、どのhookがどこで発火しているか、どのエージェントがユーザー入力でブロックされているか、どのStop hookが実行を完了したばかりかを一目で把握できます。

デスクトップ+モバイル通知

AgentsRoomはネイティブmacOS通知と、エンドツーエンド暗号化されたモバイルプッシュ通知を備えて出荷されます。Claude CodeのNotification hook、Stop hook、SubagentStop hookはすべてAgentsRoomがデスクトップとスマートフォンに直接表面化するシグナルを生成します。コンピューターから離れても、hookが呼び戻すタイミングを知ることができます。

Claude Code Hooks FAQ

Claude Code hooksとは一文で言うと何ですか?+
Claude Code hooksは、Claude Codeが特定のライフサイクルイベント(PreToolUse、PostToolUse、UserPromptSubmit、Stop、Notification、SubagentStop)で自動的に実行するユーザー定義のシェルコマンドであり、AIコーディングエージェントの動作を決定論的に制御できるようにします。
Claude Code hooksはどこで設定しますか?+
Claude Code hooksは.claude/settings.json(gitにコミットされ、チームで共有)または.claude/settings.local.json(gitignored、個人用)に存在します。両方のファイルはClaude Code CLIによって自動的に取り込まれます。AgentsRoomは本物のClaude Code CLIを実行するため、追加設定なしで両方のファイルを尊重します。
AgentsRoomはClaude Code hooksを置き換えますか?+
いいえ。AgentsRoomはClaude Code hooksを置き換えたり、書き換えたり、インターセプトしたりしません。本物のClaude Code CLIを子プロセスとして実行するため、あなたのhooksはAnthropicが設計した通りに実行され続けます。AgentsRoomの役割は、hook駆動のClaude Codeセッションの上にビジュアルコマンドセンターとマルチエージェントダッシュボードを提供することです。
AgentsRoomでClaude Code hookイベントを監視できますか?+
はい。AgentsRoomは、hookがトリガーしたイベント(フォーマッタ出力、ガードレール拒否、通知メッセージ、サブエージェント停止)を含む、すべてのClaude Codeセッションの出力をライブでストリーミングします。マルチエージェントダッシュボードはすべての実行中エージェントのステータスを集約するため、どのhookがどこで発火したかを一目で把握できます。
最初に始めるのに最も有用なClaude Code hookは何ですか?+
ほとんどのチームにとって、PostToolUseは最も価値の高い最初のhookです:フォーマッタとリンターに配線して、すべてのEditが即座にクリーンアップされるようにしましょう。安全クリティカルなプロジェクトでは、PreToolUseが不可欠です:エージェントが実行する前に破壊的なBashコマンドをブロックします。それらが整ったら、監査ログのためのUserPromptSubmitと完了テレメトリのためのStopを追加しましょう。
AgentsRoomはClaude Code hooksと共に無料で使えますか?+
はい。AgentsRoomは最大3プロジェクトまで無料でダウンロードして使用できます。あなた自身のAnthropicサブスクリプションまたはAPIキーを持ち込んでください。.claude/settings.jsonで設定したすべてのhook、すべてのPreToolUseガードレール、すべてのPostToolUseフォーマッタは即座に動作します——追加のセットアップなし、追加料金なし。

Claude Code Hooksがライブで発火する様子を見よう

AgentsRoomをダウンロードし、.claude/settings.json hooksを持つプロジェクトを開き、Claude Codeエージェントを生成して、すべてのhookイベントがリアルタイムでダッシュボードにストリーミングされる様子を見守りましょう。

無料AgentsRoomをダウンロード

コンパニオンアプリ:外出先でもエージェントを確認

Claude、Codex、OpenCode、Gemini CLI、Aiderに対応

マルチプロジェクト
マルチプロバイダー
マルチエージェント
ライブステータス
ファイル差分
モバイルアプリ
ライブプレビュー