長いビルド、E2E テスト、開発サーバの起動。完了を待つあいだ Claude に「もう終わった?」を繰り返させるのは、トークンも時間も無駄になる。Monitor は「条件が満たされたら知らせる」push 型の待ち方だ。
ポーリングの限界
バックグラウンドで走らせた処理の様子を Claude が一定間隔で覗きにいく(pull 型)と、覗くたびに出力を読み込んでコンテキストを消費する。長い処理ほど無駄が積み上がる。
Monitor がすること
バックグラウンドのプロセスを見張り、次のような条件で割り込みを発火する。
- プロセスの終了
- 特定の出力パターン(例: `Server listening on port 3000`)
- エラーや例外の出現
- タイムアウト
発火すると、引き金になった出力と、その前後の出力ウィンドウが返る。つまり「何が起きて止まったのか」を文脈ごと受け取れる。さらに監視中は、その処理に依存しない別の作業を並行して進められるので、待ち時間が手空きにならない。
バックグラウンド実行と組み合わせる
長時間コマンドは `run_in_background` で投げ、Monitor に完了シグナル(プロセス終了・特定ログ・エラー)を見張らせる、というのが基本形だ。
npm run build を run_in_background で起動
→ 出力に "build complete" が出たら知らせて続きを読むには
無料でアカウント作成
CCHub は Claude Code 開発者のための日本語コミュニティです。