できること
会話を止めずに監視
Claude がバックグラウンドで対象を監視し、変化があったときに反応します。利用者は同じセッションで作業を続けられ、イベントが届くと Claude が割り込んで伝えます。
ログ・CI・ファイルの監視
ログファイルを tail してエラーが出た時点で知らせる、PR や CI ジョブをポーリングして状態の変化を報告する、ディレクトリのファイル変更を監視する、といった依頼ができます。指定した長時間のスクリプトの出力も追跡できます。
WebSocket に直接接続
サーバーがすでに WebSocket でイベントを送っている場合、Claude はポーリング用のスクリプトを書かずに直接接続し、届いたメッセージを 1 件ずつ報告できます。
機能解説
概要
多くの監視では、Claude が小さなスクリプトを書いてバックグラウンドで実行し、出力行を届いた時点で 1 行ずつ受け取ります。利用者は同じセッションで作業を続けられ、イベントが届くと Claude が割り込んで伝えます。ログファイルの監視や PR・CI ジョブの状態確認など、長く続く処理を見守る場面に関わる機能です。
Monitor ツールは、会話を中断せずにバックグラウンドで対象を見張り、変化に応じて Claude が反応する仕組みです。多くの watch (監視) では、Claude が小さなスクリプトを書いてバックグラウンドで動かし、出力を 1 行ずつ届いた時点で受け取ります。
- watch には常に期限があります。期限は最大 30 分で、単一プロンプトの
-p実行では 10 分です。 - 期限に達すると watch は終了し、Claude に 1 回だけ通知が届きます。まだ必要であれば、Claude は watch を再び開始できます。
- タイムアウトの無い persistent オプションは、この期限の仕組みに置き換えられました。
- プラグインは、Claude に開始を頼まなくても、プラグインが有効なときに自動で始まるモニターを宣言できます。
WebSocket での監視
サーバーがすでに WebSocket でイベントを送っている場合、Claude はポーリング用のスクリプトを書かずに直接接続できます。
- テキストメッセージは、複数行にわたる場合でも 1 件が 1 つのイベントになります。
- バイナリメッセージは渡されません。代わりに
[binary frame, 512 bytes]のようなプレースホルダーの行が Claude に届きます。 - ソケットが閉じると watch は終了し、Claude はクローズコードを受け取ります。
- WebSocket の watch は
commandの代わりにwsを入力に取ります。1 回の Monitor の呼び出しで両方を組み合わせることはできません。 timeout_msの期限は WebSocket の watch にも適用され、期限に達すると終了します。TaskStopで期限前に取り消すこともできます。
提供状況の注意
Monitor ツールとプラグインのモニターは、2026 年 10 月 23 日から Bedrock・Vertex・Foundry 上でも提供されています。テレメトリや非必須トラフィックを無効にしている場合にも提供されます。対象プランについては、公式のリリースノートには記載がありません。
管理者・導入時に確認したい点
- Monitor がコマンドを実行するときは、Bash と同じ権限ルールを使います。Bash に設定した
allowとdenyのパターンは Monitor にも適用されます。 - サンドボックスを有効にした auto mode では、Bash・PowerShell・Monitor にコマンドごとの
allowed_domainsがあります。コマンドが必要とするホストはそのコマンドと一緒にレビューされ、そのコマンドにだけ開放されます。それ以外のホストは拒否されます。 - WebSocket を開くときは承認を求めるプロンプトが表示されます。auto mode では代わりに classifier が判断します。このプロンプトには、同じホストへの以後のプロンプトを省略する選択肢はありません。
- Claude Code は、プライベート・リンクローカル・クラウドメタデータのアドレスを指す WebSocket の URL を拒否します。こうしたアドレスに解決されるホスト名も拒否の対象です。
- Bash・PowerShell・Monitor の権限プロンプトでは、ファイル編集のプロンプトと同じく、コマンドが破線の間に表示されます。
使い方
モニターを停止する方法です。
- モニターを止めるには、Claude にキャンセルを依頼するか、セッションを終了します。
- モニターを開始したサブエージェントを
/tasksなどから停止すると、そのサブエージェントが開始したモニターも一緒に停止します。
利用シーン
ログファイルを tail し、エラーが出た時点で Claude に知らせてもらう場面に向いています。
PR や CI ジョブの状態を見張り、状態が変わったときに報告を受ける場面に向いています。
長時間かかるスクリプトを走らせたまま、同じセッションで別の作業を続ける場面に使えます。
WebSocket で配信されるイベントを、届いたメッセージごとに確認する場面に使えます。
ChatGPT・OpenAI の対応する機能
比較の単位となる業務: バックグラウンドスクリプトの出力イベントを監視してエージェントに逐次通知
Thread automations (スレッドオートメーション) は、会話の文脈を保ったまま、スケジュールに従って同じスレッドを再開させる機能で、長時間実行されるプロセスの確認や更新の監視に使えます。
Monitor ツールは、バックグラウンドで実行したスクリプトの出力を 1 行ずつ届いた時点で受け取り、利用者が同じセッションで作業を続けている間にイベントが届くと Claude が割り込んで伝えます。長く続く処理を見守る用途は共通しており、確認のきっかけが Thread automations ではスケジュールによる再開、Monitor ツールでは出力イベントの到着である点が異なります。
これまでの変更
Bedrock・Vertex・Foundry 上、およびテレメトリや非必須トラフィックが無効な場合にも提供されるようになりました。
VS Code で、バックグラウンドシェルと Monitor の出力がエージェントマップ (agent map) のカードに表示されるようになりました。権限プロンプトでコマンドが破線の間に表示されるようになりました。イベント行には説明の繰り返しではなく各イベントが出力した内容が表示され、変化のない "Waiting for N … to finish" 行は毎イベント後に繰り返されなくなりました。
スクリプトの最終出力と終了が 2 つではなく 1 つの通知で届くようになり、モデルのターンが 1 回少なくなりました。watch に常に期限 (最大 30 分、単一プロンプトの
-p実行では 10 分) が付き、Claude に再設定を通知するようになって、persistent オプションが置き換えられました。サンドボックス有効の auto mode で、コマンドごとのallowed_domainsが追加されました。出力を一切出さずに終了した watch は、"stream ended" と報告する代わりに、出力が無かったことを伝えるようになりました。
バックグラウンドスクリプトからのイベントをストリーミングする Monitor ツールが追加されました。