複数のエージェントをエージェントビューで管理する
1 つの画面から多くの Claude Code セッションをディスパッチして管理します。エージェントビューは、すべてのセッションが何をしているか、どのセッションが入力を必要としているかを表示します。
claude agents で開くエージェントビューは、すべてのバックグラウンドセッションの 1 つの画面です。実行中のもの、入力が必要なもの、完了したものが表示されます。新しいセッションをディスパッチし、トランスクリプトをスクロールする代わりに一目でセッションの状態を確認し、セッションが必要とするときだけ介入します。各バックグラウンドセッションは完全な Claude Code の会話であり、ターミナルが接続されていなくてもバックグラウンドで実行し続けるため、いつでも開いて、返信して、去ることができます。
Claude が複数の独立したタスクに対して、あなたが毎ステップを監視することなく作業できる場合に、エージェントビューを使用します。バグ修正、プルリクエストレビュー、不安定なテストの調査を 3 つの行としてディスパッチし、別のウィンドウで作業を続け、行が入力が必要であることを示すか、結果が得られたときに確認します。
任意のエージェントのセッションでより直接的に作業したい場合は、行にアタッチして完全な会話に入ります。
エージェントビューを subagents、agent teams、worktrees と比較するには、エージェントを並列で実行するを参照してください。
エージェントビューはリサーチプレビュー中です。インターフェースとキーボードショートカットは機能の進化に伴って変更される可能性があります。
クイックスタート
このチュートリアルでは、コアエージェントビューループについて説明します。タスクをディスパッチし、Claude が作業する際に行が更新されるのを見守り、ピークして確認して返信し、フル会話にアタッチします。ディスパッチしたセッションはエージェントビューを閉じた後も実行し続けるため、離れて後で戻ることができます。
エージェントビューを開く
シェルから以下を実行します。
claude agents
まだディレクトリのワークスペーストラストダイアログを受け入れていない場合、Claude Code はエージェントビューが開く前にそれを表示します。これは claude が表示するのと同じダイアログです。受け入れてワークスペースの信頼を保存して続行します。拒否すると、Claude Code はエージェントビューを開かずに終了します。
エージェントビューが開き、下部に入力フィールドが表示され、セッションが開始されるとテーブルが埋まります。いつでも Esc を押してシェルに戻ります。← でセッションをバックグラウンドにして開いた場合、Esc はそのセッションの会話に戻ります。セッションは離れている間も実行し続け、次にエージェントビューを開いたときに再度表示されます。
セッションをディスパッチする
タスクを説明するプロンプトを入力して Enter を押します。新しいバックグラウンドセッションがそのタスクで開始され、作業中か、入力を待機中か、完了しているかを示す行として表示されます。新しいセッションはエージェントビューヘッダーに表示されているモデルを使用します。どの権限モードで開始するかは、エージェントビューをどのように開いたかによって異なります。
ここで入力するすべてのプロンプトは独自の新しいセッションを開始します。別のプロンプトを入力して Enter を押すと、最初のセッションへのフォローアップを送信するのではなく、最初のセッションと並行して 2 番目のセッションが起動します。この方法で複数を並行して実行できます。
各セッションはサブスクリプションクォータを独立して使用するため、一度に多くをディスパッチする前に制限事項を参照してください。
ピーク表示と返信
矢印キーで行を選択し、Space を押してピークパネルを開きます。フルトランスクリプトではなく、セッションの最新の出力、または待機中の質問が表示されます。返信を入力して Enter を押すと、エージェントビューを離れずに送信できます。
アタッチとデタッチ
フル会話が必要な場合は、行で Enter または → を押してアタッチします。セッションはターミナルを引き継ぎ、フルインタラクティブな Claude Code セッションになります。空のプロンプトで ← を押してデタッチし、テーブルに戻ります。
既存のセッションを持ち込む
このステップは実行中のセッションが必要です。前のステップに従った場合、このターミナルで開いているセッションはないため、別のターミナルで通常の claude セッションを開き、最初にメッセージを送信してください。
既に開いているセッションをエージェントビューに移動するには、セッション内で /bg を実行するか、空のプロンプトで ← を押してセッションをバックグラウンドにし、1 ステップでエージェントビューを開きます。メッセージがまだない新しいセッションでは、/bg はメッセージを最初に送信するよう求めますが、← はすぐに機能します。セッションは実行し続け、ディスパッチしたセッションと並行して行として表示されます。
claude agents を claude の代わりにプライマリエントリーポイントとして使用できます。エージェントビューからすべてのタスクをディスパッチし、フル会話が必要な場合はアタッチし、← を押してテーブルに戻ります。
通常の claude セッション内では、プロンプトフッターの ← ヒントは、← 2 agents のように入力を待機中のバックグラウンドエージェントの数をカウントし、入力が必要なエージェントがない場合は ← for agents に戻ります。99 を超えるカウントは 99+ として表示されます。カウントはターミナルがフォーカスされている間は約 10 秒ごとに更新され、フォーカスが戻ると即座に更新されます。カウントが移動したときとエージェントが完了したときに色が一時的に変わり、バックグラウンドセッションが完了して入力が必要なエージェントがない場合は、← 2 done のように完了した数を一時的に表示します。prefersReducedMotion 設定がオンの場合は両方のフラッシュがオフになり、スクリーンリーダーモードではヒントは非表示になります。
エージェントビューでセッションを監視する
claude agents を実行してエージェントビューを開きます。ターミナル全体を占有し、状態でグループ化されたすべてのセッションをリストします。ピン留めされたセッションと入力が必要なセッションが上部に表示されます。各行はセッションの名前、現在のアクティビティ、およびセッションが作成されてからの経過時間を表示します。完了したセッションの経過時間は、実行にかかった時間で固定されます。
名前は、そのセッションで /color によって設定されたカラーで色付けされます。← または /background で セッションをバックグラウンドにする ときにカラーが引き継がれます。
デフォルトでは、リストはすべてのプロジェクト全体で開始したすべてのバックグラウンドセッションを表示します。1 つのリポジトリで作業しているセッションと別のワークツリーで作業している別のセッションの両方がここに表示されます。エージェントビューを開いたディレクトリに関係なく表示されます。リストを 1 つのプロジェクトに絞り込むには、--cwd を渡します:
claude agents --cwd ~/projects/my-app
これはそのディレクトリの下で開始されたセッションのみを表示します。~/projects/my-app/.claude/worktrees/ の下の ワークツリーに移動した セッションは、~/projects/my-app に属するものとしてカウントされます。
他のターミナルで開いているインタラクティブセッションは、バックグラウンドにする までは表示されません。Subagents と teammates はセッションが生成しても個別の行としてリストされません。
Pinned
✽ clawd walk cycle Drawing the walk-cycle sprite frames 3m
Ready for review
∙ jump physics Opened PR with collision fix #2048 2h
Needs input
✻ power-up design double jump or wall climb? 1m
Working
✽ collision detection Adding swept-AABB checks to CollisionSystem 2m
✢ playtest level 3 run 12 · all checkpoints cleared in 4m
Completed
✻ title screen result: menu, options, and credits done 9m
∙ sound effects result: 14 SFX exported to assets/audio 4h
… 6 more
セッション状態を読む
各行は、セッションの状態を示すアイコンで始まります。アイコンの色とアニメーションはセッションの状態を示します:
| 状態 | アイコン表示 | 意味 |
|---|---|---|
| 作業中 | アニメーション | Claude がアクティブにツールを実行しているか、応答を生成しています |
| 入力が必要 | 黄色 | Claude は特定の質問または許可決定をあなたから待機しています。あなたのみが提供できる答え、許可決定、または別のプロンプト。例えば サンドボックス プロンプトでネットワークホストを許可するか、MCP サーバーの 入力リクエストに応答する。アタッチされたターミナルが必要なコマンド。例えば /install-github-app または /mcp 設定リスト。ここで無人セッションを保持します |
| アイドル | 薄い | セッションはすることがなく、次のプロンプトの準備ができています |
| 完了 | 緑 | タスクが正常に完了しました |
| 失敗 | 赤 | タスクがエラーで終了しました |
| 停止 | グレー | セッションは Ctrl+X または claude stop で停止されました。そのプロセスは Claude Code の外から終了されました。または バックグラウンドサービスがオフの間に終了しました |
別に、アイコンの形状は基盤となるプロセスが実行しているかどうかを示します:
| 形状 | 意味 |
|---|---|
✻ またはアニメーション ✽ |
セッションプロセスは生きており、すぐに返信します |
∙ |
プロセスは終了しました。ピーク表示、返信、またはアタッチはできます。Claude は中断したところから再開します |
✢ |
/loop セッションはイテレーション間でスリープしています。行は実行回数とカウントダウンを表示します |
行の右端に表示される #N または !N ラベルは セッションのプルリクエストまたはマージリクエスト へのリンクであり、状態アイコンの一部ではありません。
ターミナルタブのタイトルは、エージェントビューが開いている間、待機中の入力カウントを表示します。セッションが入力を必要とする場合は 2 awaiting input · claude agents、そうでない場合は claude agents です。
スクリプトまたは別のプログラムからセッション状態を読み取るには、~/.claude/jobs/ の下のファイルではなく claude agents --json を使用します。
エージェントビューが開いている間、Claude Code はローカルバックグラウンドセッションが入力を必要とし始めたとき、完了したとき、または失敗したときに、設定された ターミナル通知チャネル を通じて通知を送信します。/loop セッションなどのスケジュールで実行されるセッションは、入力が必要な場合にのみ通知します。通知は Claude Code の残りの部分と同じ preferredNotifChannel 設定 を使用し、agent_needs_input または agent_completed タイプで Notification フック を発火します。
バックグラウンドセッションは作業を続けるためにターミナルを開く必要がありません。別の スーパーバイザープロセス がセッションを実行するため、エージェントビューを閉じたり、シェルを閉じたり、新しいインタラクティブセッションを開始したりしても、ディスパッチされた作業は続きます。
セッション状態はディスク上に永続化され、自動更新とスーパーバイザー再起動を通じて保存されます。セッションはマシンがスリープするときも保存されます。プロセスはウェイク時に再開され、スーパーバイザーはアイドルとして時間ギャップを扱う代わりにそれらに再接続します。シャットダウンはまだ実行中のセッションを停止します。シャットダウン後にセッションが失敗として表示される を参照して、それらを復旧する方法を確認してください。
応答しなくなったセッションを開くと、スーパーバイザーはそのプロセスを再起動し、セッションは中断した応答を中断したところから続行します。マシンがスリープしている間に応答の途中でセッションがその状態になる可能性があります。
行の概要
各行の 1 行の概要は Haiku クラスモデル によって生成されるため、トランスクリプトを開かずにセッションが何をしているか、何が必要か、または何を生成したかを伝えることができます。セッションがアクティブに作業している間、行テキストはセッション自身の最近の出力から最大 15 秒ごとに 1 回更新され、モデルリクエストを送信せず、各ターンが終了したときに新しい概要を書きます。
作業中の行はセッションが何をしているかを示し、ブロックされた行は質問を示します。長いターンの間、モデルは数分ごとに概要を書き直し、ビジーな行は古い概要を表示し続けません。概要テキストは行の残りの幅を埋め、ターミナルの右端でのみ切り詰められます。ピークパネル を開いてエッジが切り詰める文を読みます。
リストが ディレクトリでグループ化 されている場合、概要はセッションの状態を色付きの単語で開きます。例えば Needs input · double jump or wall climb? のようになります。デフォルトの状態グループ化では、グループヘッダーはすでに状態を名前付けするため、行は概要のみを表示します。
ターン終了時の概要と各ミッドターン書き直しは、通常のプロバイダーを通じた 1 つの短い Haiku クラスリクエストであり、セッション自体と同じ データ使用条件 の下で請求および処理されます。15 秒の更新はモデル書き直しの間にセッション自身の出力を再利用し、リクエストを送信しません。Haiku クラスモデルが設定されていないサードパーティプロバイダーまたはゲートウェイでは、リクエストはセッションのメインモデルを使用します。ANTHROPIC_DEFAULT_HAIKU_MODEL を設定して選択します。
プルリクエストステータス
セッションが プルリクエストを開く と、Claude Code は行の右端にラベルを追加し、プルリクエストにリンクします:
- Claude Code はラベルを
#1234としてプルリクエストに、!1234として GitLab マージリクエストに書き込みます。 - Claude Code はハイパーリンクサポートを検出できない場合でもリンクを出力します。例えば SSH または tmux 経由。
FORCE_HYPERLINK=0を設定してラベルをプレーンテキストとしてレンダリングします。 - セッションにフォローアップを送信した後、Claude Code はラベルを保持し、行がライブプログレスに戻ります。
既存のプルリクエストで作業しているセッションは同じ方法でリンクされます。Claude Code はコマンド Claude が実行するかに応じて異なる方法でプルリクエストを検出します:
- Claude が
ghでプルリクエストを編集、コメント、クローズ、またはマージ準備完了にマークすると、Claude Code はコマンド自身の出力が名前付けするプルリクエストをリンクします。キャプチャされた出力がプルリクエストを名前付けしないghコマンドはリンクを作成しません。gh pr mergeは一般的なケースです。なぜなら、結果をインタラクティブターミナルにのみ出力するためです。 - Claude が
gh pr checkoutでプルリクエストをチェックアウトするか、ブランチにプッシュすると、Claude Code はgh pr viewでブランチを検索してオープンなプルリクエストをリンクします。 - プルリクエストは Claude がプッシュするときにまだ存在する必要はありません。Claude Code は同じディレクトリで最大 5 つの後の
git、gh、glab、またはcurlコマンドが実行された後、ブランチ検索を再試行します。GitHub REST API を通じて Claude が作成したものを含む、後で作成されたプルリクエストは、再試行がそれを見つけるときにリンクします。
セッションが複数のプルリクエストにリンクされている場合、ラベルはカウントを表示します。例えば 3 PRs のようになり、最も注意が必要なオープンプルリクエストで色付けされます。ピークパネル を開いてすべてを表示します。
プルリクエスト番号はそのステータスで色付けされます:
| カラー | プルリクエストステータス |
|---|---|
| 黄色 | チェックまたはレビューを待機中、またはチェックが失敗 |
| 緑 | チェックが成功し、レビューがブロックされていない |
| 紫 | マージ済み |
| グレー | ドラフトまたはクローズ |
タスクがプルリクエストで終了する場合、このラベルで結果を確認します。プルリクエスト番号が緑になったときにプルリクエストをレビューしてマージします。
ピーク表示と返信
選択した行で Space を押してピークパネルを開きます。行が切り詰める文で開き、どの文かはセッションの状態によって異なります:
- あなたを待機しているセッション:尋ねている正確な質問。返信入力の上に表示されます
- 完了したセッション:その結果
- 作業中のセッション:その完全なステータス文
セッションにリンクされたプルリクエストが次にリストされます。あなたを待機しているセッションの場合、waiting 3m のような行がそれらの下に表示され、待機時間を示します。これはパネルで表示される唯一の時間です。行の右端の経過時間は異なる数字です。セッションが開始されてからカウントされます。
ほとんどの場合、ピークパネルで十分であり、フルトランスクリプトを開く必要はありません。
ピークパネルに返信を入力して Enter を押すと、そのセッションに送信されます。セッションが複数選択肢の質問をしている場合、ピークパネルはオプションを番号付きリストとして表示し、数字キーを押して 1 つを選択できます。許可プロンプトはテキストとして表示され、セッションが実行したいことを説明します。番号付きオプションはありません。返信を入力して答えるか、標準プロンプトで答えるためにアタッチします。他のブロックされたセッションの場合は、Tab を押して入力に提案された返信を入力し、送信前に編集できます。返信の前に ! を付けて Bash コマンドを代わりに送信します。
PermissionRequest または PreToolUse フックが Claude Code がセッションが尋ねている呼び出しに対して検証できない出力を返す場合、行はフックイベントと hook output invalid: を検証エラーとともに表示し、その後に保留中のリクエストのテキストを表示します。別の方法で失敗するフックの場合、行はフックが失敗したことを示します。セッションは同じリクエストで待機し続けます。
配信できない返信。バックグラウンドサービスに到達できないか、送信が失敗した場合、返信は保存され、そのプロセスが再度開始されるときにセッションの次のプロンプトとして送信されます。エラーメッセージは返信が保存されたことを示します。! でプレフィックスされた返信は保存されません。保存されたテキストはセッションにプレーンプロンプトとして到達するため、Bash コマンドとして実行されません。
音声ディクテーション が有効な場合、返信入力がフォーカスされている間、プッシュトゥトークキーを押したままにするか、タップして返信をディクテーションします。これはエージェントビューの下部のディスパッチ入力でも同じように機能します。
↑ と ↓ を使用してパネルを閉じずに隣接するセッションをピーク表示するか、→ を使用してアタッチします。
セッションにアタッチする
選択した行で Enter または → を押してアタッチします。エージェントビューはフルインタラクティブセッションに置き換えられます。アタッチすると、Claude は不在中に何が起こったかの短い要約を投稿します。
アタッチ中、セッションは他の Claude Code セッションのように動作します。すべての コマンド、キーボードショートカット、および機能が機能します。以下の例外があります。
アタッチ中、/install-github-app と /mcp 設定リストは通常どおり機能します。人間がターミナルにいるため、ダイアログを完了できます。誰もアタッチされていない場合、これらのコマンドはダイアログを開くことができないため、セッションはエージェントビューの Needs input の下に表示され、open this session to manage MCP servers のような行が表示されます。トランスクリプト返信は同じことを示します。アタッチしてコマンドを再度実行して続行します。アタッチするとニーズ入力行がクリアされます。/mcp reconnect <server>、/mcp enable、および /mcp disable はどちらの方法でもアタッチせずに機能します。
アタッチされたセッションは、tui 設定に関係なく、常に フルスクリーンモード でレンダリングされます。バックグラウンドセッションには追加するターミナルスクロールバックがないためです。PgUp、PgDn、またはマウスホイールでスクロールし、トランスクリプトモードの場合は Ctrl+O を押します。ターミナルのネイティブスクロールと tmux コピーモードは現在のビューポートのみを表示します。これはフルスクリーンアプリケーションを実行するときと同じです。
空のプロンプトで ← を押すか、/exit を実行してデタッチし、エージェントビューに戻ります。エージェントビューからセッションを開いたか、シェルから claude attach <id> を実行したかに関係なく機能します。
← は /btw オーバーレイ が開いている間もデタッチします。Claude Code v2.1.257 以降が必要です。まだ答えている側の質問は、あなたが離れている間、実行し続けます。次回アタッチするときに、オーバーレイは再度開くか、その答えで開きます。
Windows では、アタッチしてから約半秒以内に ← を押すと、Claude Code は Ambiguous ←, press again to detach を表示します。その時間枠では、ターミナルはアタッチ前からのプレスを再配信できるためです。← を再度押してデタッチします。
Ctrl+Z もデタッチしますが、開始した場所に戻ります。エージェントビューからアタッチした場合はエージェントビュー、またはシェルから claude attach を実行した場合はシェルです。ダイアログがフォーカスを持っており、← に応答していない場合は Ctrl+Z を使用します。
Ctrl+C はアタッチ中に標準的な割り込み動作を保持します。実行中の応答または ! シェルコマンドをキャンセルするのであり、デタッチするのではありません。空のプロンプトで Ctrl+C を 2 回押すとデタッチします。これは他のセッションと同じです。
デタッチはバックグラウンドセッションを停止しません。←、Ctrl+Z、/exit、および二重 Ctrl+C または二重 Ctrl+D はすべてセッションを実行し続けます。セッション内からセッションを終了するには、/stop を実行します。
ターミナルを離れずにセッションを切り替える
フォアグラウンドで実行しているセッション、つまりエージェントビューからアタッチするのではなくターミナルで開始したセッションでは、空のプロンプトで ← を押すとセッションをバックグラウンドにし、そのセッションが事前に選択された状態でエージェントビューを開きます。これにより、ターミナルを離れずにセッションを切り替えることができます。同じ単一の押下でアタッチされたセッションをデタッチします。
プロンプトのテキストの最後を削除した直後、またはプロンプト履歴を移動した直後に ← を押すと、Claude Code は確認を求めます。最初のプレスは Press ← again to open agents を表示するか、アタッチされたセッションで Press ← again to go back to agents を表示し、2 番目のプレスが切り替わります。
← がフォアグラウンドセッションをバックグラウンドにすると、エージェントビューはリストの上に Your conversation moved to the background を表示し、そのセッションの行が既に選択されています。そこから:
Enterを押して会話を再度開きます。Escを押して切り替えを元に戻し、会話に戻ります。EscがStill starting — try again in a momentを表示する場合、バックグラウンドセッションはまだ準備ができていないため、しばらくしてからEscを再度押します。Ctrl+Cを 2 回押してシェルに終了します。
Claude Code が会話を再度開くことができない場合、終了して claude --resume コマンドを出力し、それを再開します。
Claude のタスクリスト は会話とともにバックグラウンドセッションに移動するため、そのセッションに戻るときにチェックリストは完全です。
← を押した行は、矢印キーまたはマウスで選択を移動した後も、太字で薄くない名前を保持するため、どのセッションから来たかを判断できます。
← を押すときにツールが実行されている場合、Claude Code はそれが完了するまで約 10 秒待機してからバックグラウンドにし、応答はバックグラウンドセッションで続きます。代わりに待機せずにすぐにバックグラウンドにするには、← を再度押します。進行中の作業がバックグラウンドセッションに引き継ぐことができない場合、Claude Code は Background this session? ダイアログを最初に表示します。これは /background と同じです。
10 秒の制限は フォアグラウンド subagents Claude が会話で開始した間は適用されません。Claude Code は待機を続けるため、それらの作業が引き継がれ、待機中に Still backgrounding after the current tool 通知が表示されます。← を再度押してすぐにバックグラウンドにしない場合、これらの subagents が最初から再開されます。Claude Code は 動的ワークフロー が実行している subagents を待機しません。ワークフローに subagents が実行されている場合、Claude Code は Background this session? ダイアログを代わりに表示します。
Claude Code はプロンプト入力に未送信のテキストがある間、セッションをバックグラウンドにしません。テキストはターミナルの入力ボックスに留まり、バックグラウンドセッションに移動しません。Claude Code がセッションをバックグラウンドにするのを待っている間に入力に入力すると、Backgrounding cancelled — you have unsent text in the input. Send it or clear it, then press ← again. でスイッチがキャンセルされます。
← を押すと、会話にメッセージがない場合でもセッションの行が作成されるため、→ はそれに戻ります。
このショートカットは /config の leftArrowOpensAgents 設定でオフにできます。
リストを整理する
エージェントビューはセッションをグループ化し、入力が必要なセッションが上部に表示されます。Ready for review と Needs input は Working と Completed の上に表示されます。これらのグループ名は上記の 状態 と 1 対 1 でマップされません。セッションはオープンなプルリクエストを持つときに Ready for review に移動し、Completed は完了、失敗、および停止したセッションを一緒に収集します。
Ctrl+S を押してディレクトリでグループ化に切り替えます。選択内容は実行全体で保存されます。
グループ内で:
Ctrl+Tを押してセッションをトップにピン留めし、アイドル中にそのプロセスを実行し続けますShift+↑またはShift+↓を押してセッションを並べ替えますCtrl+Rを押してセッションの名前を変更します- グループヘッダーで
Enterを押して折りたたみます
セッションをリストから削除するには、Ctrl+X を押して停止し、2 秒以内に Ctrl+X を再度押して削除します。グループヘッダーで Ctrl+X を押すと、確認後、そのグループ内のすべてのセッションが削除されます。
2 番目のプレスは、停止の試みが失敗した場合でもセッションを削除します。例えば バックグラウンドサービスが応答していない ため。確認は別の 2 秒間アクティブなままであり、削除はセッション自体のプロセスを終了します。Esc を押して確認を削除せずに削除します。
セッションを削除するときに削除されるもの でカバーされている保持されたケースを除き、削除するとセッションがリストから削除され、Claude が作成したワークツリーは削除、保持、または削除方法とワークツリーが保持するものに応じて所定の位置に残されます。会話トランスクリプトはローカルマシンに常に残り、claude --resume を通じて利用可能です。
Claude Code v2.1.212 以降でセッションを戻すには、ディスパッチ入力に /resume を入力します。ピッカーが開き、エージェントビューを開いたリポジトリの過去のセッションが表示されます。最新のものが最初です。削除したセッションを含みます。既に行を持つセッションはリストされません。↑/↓ は選択を移動し、Enter は選択したセッションをバックグラウンドセッションとして再開し、リストに行として再度参加し、Esc はピッカーを閉じます。
ピッカーは裸の /resume に対してのみ開きます。ターゲット、スコープ、または制限された再開は、ピッカーで提供できないため、エージェントビューは以下の場合に attach to a session to run it ヒントを表示します:
/resumeは ID または検索用語を名前付けします- ビューは
--cwdでスコープされます - ビューは
--safe-modeで開始されました - ビューは
--permission-modeまたは--settingsなどのフラグで開かれました
画面に収まらない完了したセッションは「… N more」行に折りたたまれます。失敗とオープンなプルリクエストを持つセッションは常に表示されます。Completed グループはライブグループの後に残された垂直スペースを埋め、短いターミナルではヘッダーが単一の概要行にコンパクトされるため、作業中または入力が必要なセッションが表示されたままです。
セッションをフィルタリングする
ディスパッチ入力に入力してディスパッチの代わりにフィルタリングします:
| フィルター | 表示 |
|---|---|
a:<name> |
名前付きエージェントを実行しているセッション |
s:<state> |
指定された状態のセッション。例えば s:working。また s:blocked はあなたを待機しているすべてのセッションを受け入れます |
#<number> またはプルまたはマージリクエスト URL |
そのプルリクエストまたはマージリクエストで作業しているセッション |
| その他の URL | 最初のプロンプトにその URL が含まれていたセッション |
キーボードショートカット
エージェントビューで ? を押してコンテキスト内のすべてのショートカットを表示します。下の表はそれらをまとめています。
| ショートカット | アクション |
|---|---|
↑ / ↓ |
行間を移動 |
Enter |
選択したセッションにアタッチするか、入力にテキストがある場合はディスパッチ |
Space |
選択したセッションのピークパネルを開くまたは閉じる |
Shift+Enter |
ディスパッチ入力に改行を挿入します。メインプロンプトのように |
Ctrl+Enter |
ディスパッチしてすぐにアタッチします。? オーバーレイが ctrl+enter to start and open をリストするターミナルで |
→ |
選択したセッションにアタッチ |
Alt+1..Alt+9 |
フォーカスされたセッションのディレクトリ内のセッション 1~9 にアタッチ |
Tab |
空の入力で、すべての subagents を参照します。それ以外の場合はハイライトされた提案を適用 |
Ctrl+S |
グループ化を状態とディレクトリの間で切り替え |
Ctrl+T |
選択したセッションをピン留めまたはピン留め解除 |
Ctrl+R |
選択したセッションの名前を変更 |
Ctrl+G |
$VISUAL または $EDITOR でディスパッチプロンプトを開く |
Ctrl+J |
ディスパッチ入力に改行を挿入 |
Ctrl+X |
セッションを停止。2 秒以内に再度押して削除 |
Shift+↑ / Shift+↓ |
選択したセッションを並べ替え |
Esc |
ピークパネルを閉じるか、入力をクリアするか、終了します。← でセッションをバックグラウンドにしてエージェントビューを開いた場合、最終的な Esc は終了する代わりにその会話に戻ります。vim エディターモード がオンの場合、入力で Esc を押すと INSERT から NORMAL モードに切り替わり、テキストを保持します。メインプロンプトのように |
Ctrl+C |
入力をクリア。2 回押して終了 |
? |
すべてのショートカットを表示 |
Ctrl+S、Ctrl+T、および Ctrl+G は keybindings.json に従います。Ctrl+S と Ctrl+T を Agents コンテキスト の agents:switchView と agents:togglePin アクションで再バインドまたはアンバインドし、Ctrl+G を Chat コンテキストの chat:externalEditor バインディングを通じて再バインドします。テーブル内の他のショートカットは再バインドできません。
新しいエージェントをディスパッチする
エージェントビューから新しいバックグラウンドセッションをディスパッチするか、既存のインタラクティブセッションをバックグラウンドに送信するか、シェルから直接開始できます。
エージェントビューから
エージェントビューの下部の入力にプロンプトを入力して Enter を押すと、新しいバックグラウンドセッションが開始されます。セッションはプロンプトから自動的に名前が付けられます。後で Ctrl+R で名前を変更できます。
自動名は Haiku クラスモデル によって書かれた短いラベルです。セッションが後で取得する名前もその行に表示されます。これには、そのセッションで プランを承認 するときに生成される タイトル も含まれます。
プロンプトに画像を貼り付けて、タスクにスクリーンショットまたは図を含めます。
800 文字を超えるか 3 行以上の貼り付けられたテキストは [Pasted text #N] プレースホルダーに折りたたまれるため、入力は 1 行のままです。ディスパッチするときに完全なテキストが送信されます。ディスパッチする前に折りたたまれたテキストを確認または編集するには、同じテキストを再度貼り付けると、プレースホルダーが入力に展開されます。
プロンプトの一部をプレフィックスまたは言及してセッションの開始方法を制御します:
| 入力 | 効果 |
|---|---|
<agent-name> <prompt> |
最初の単語がカスタム subagent 名と一致する場合、その subagent はセッションのメインエージェントとして実行され、frontmatter の設定を使用します |
@<agent-name> |
プロンプト内の任意の場所でカスタム subagent を言及してメインエージェントとして実行 |
@<repo> |
リポジトリを言及してセッションをそこで実行します。どのリポジトリがリストされるかについては、特定のディレクトリにディスパッチする を参照してください |
/<command> |
skills および commands をディスパッチプロンプトとして提案 |
! <command> |
Claude セッションを開始する代わりに、シェルコマンドをバックグラウンドジョブとして実行します。ジョブは行として表示され、アタッチ、監視、デタッチできます |
#<number> または pull request または merge request URL |
セッションが既にその pull request または merge request で作業している場合、Claude Code はディスパッチの代わりにその行を選択します |
エージェントビュー自体で実行される少数のコマンドがあります。ディスパッチの代わりに:
/exitおよび/quitはエージェントビューを閉じます/logoutはサインアウトします/modelは ディスパッチモデル を設定します/loginはサインインダイアログを開き、セッションにアタッチせずに再度サインインできます- 裸の
/resumeまたはそのエイリアス/continueは、リポジトリの過去のセッションのピッカーを開き、1 つを戻す ことでバックグラウンドセッションとして復帰させます。Claude Code v2.1.212 以降が必要です
skills、独自のコマンド、および /init などのプロンプト展開組み込みは、新しいバックグラウンドセッションにその最初のプロンプトとして送信されます。その他の組み込みコマンドは、代わりに attach to a session to run it ヒントを表示します。入力したテキストはヒントの横に入力に残るため、編集できます。
繰り返しタスクを skill としてパッケージ化すると、プロンプトを再入力せずにエージェントビューから同じワークフローを何度も開始できます。
同じ @name が subagent と兄弟リポジトリの両方と一致する場合、subagent が優先されます。最初の単語の一致も適用されるため、subagent 名の 1 つと一致する単語で始まるプロンプトはその subagent をディスパッチします。明示的にしたい場合は @ 形式を使用するか、プロンプトを別の単語で開始して一致を避けます。
特定のディレクトリにディスパッチする
新しいセッションはエージェントビューを開いたディレクトリで実行されます。別のディレクトリをターゲットにするには、以下のいずれかを実行します:
-
そのディレクトリで
claude agentsを開きます。 -
親ディレクトリで
claude agentsを開き、プロンプトで@<repo>を使用して子リポジトリを言及します。@を入力すると、これらのターゲットがリストされます:- 起動ディレクトリの 1 レベル下の Git リポジトリ
- 起動元のリポジトリの登録済み git worktrees。
.claude/worktrees/の下に Claude が作成したものなど、そのディレクトリツリー内に存在し、チェックアウトされたブランチでラベル付けされたもの。git worktree add ../featureなどのリポジトリの外に追加された worktree はリストされません - リスト内に既にセッションがあるディレクトリ
名前にスペースが含まれるディレクトリはリストされません。
-
シェルから、ディレクトリに
cdしてclaude --bg "<prompt>"を実行します。
エージェントビューがディレクトリでグループ化されている場合、ディスパッチは選択された行のディレクトリにプロンプトを送信するため、グループを選択してパスを再入力せずにそこにディスパッチできます。
セッション内から
2 つのコマンドは、セッション内の作業をバックグラウンドに移動します。/background は現在の会話をそこに送信してターミナルを解放し、/fork はコピーを送信しながら元の場所で作業を続けます。
セッションをバックグラウンドに送信する
/background またはそのエイリアス /bg を実行して現在の会話をバックグラウンドセッションに移動します。/bg run the test suite and fix any failures などのプロンプトを渡して、バックグラウンド化する前に 1 つの追加命令を送信します。Claude が応答中に /bg を実行した場合、応答はバックグラウンドセッションで続行されます。
バックグラウンド作業が実行中のセッション(subagent、バックグラウンドシェルコマンド、ワークフロー、または monitor など)を終了すると、直ちに終了する代わりに Background work is running ダイアログが表示されます。セッションをバックグラウンド化して終了するには Move to background and exit を選択します。これは /background と同じ方法でセッションをバックグラウンド化し、シェルに戻ります。このオプションは、エージェントビューが オフ になっている場合は表示されません。
バックグラウンド化されたセッションのリストに既に会話の名前がある場合、Claude Code は新しい行の名前に番号を付けます(例:my-session (2))。既存の行の名前は変わりません。新しい行の名前を変更するには、エージェントビューで選択して Ctrl+R を押します。
/fork でセッションをコピーする
/fork を実行して現在の会話を新しいバックグラウンドセッションにコピーしながら、元の会話は実行し続けます。コピーはその時点までの会話のすべてで開始されます。以下の箇条書きを参照してコピーが実行される場所を確認してください。また、モデル、権限モード、努力レベル、およびセッション中に追加したディレクトリまたは「今後は聞かない」権限付与も引き継ぎます。コピーはエージェントビューの独自の行として表示されます。
フォーク後、2 つの会話は独立しています。コピーが実行する内容は、クロスセッションメッセージング が有効になっているセッションでは、どちらのセッションの Claude も明示的に相手にメッセージを送信できますが、それ以外は元の会話に自動的に入りません。
セッションのコピーには Claude Code v2.1.212 以降が必要です。v2.1.161 から v2.1.211 では、/fork は代わりに forked subagent を開始します。これは現在 /subtask です。エージェントビューがオフ になっている場合、/fork は forked subagent の動作を保持し、/subtask は利用できません。
/fork open a draft pull request with the work so far などのプロンプトを渡すと、コピーはすぐにそれに取り組み始めます。プロンプトがない場合、コピーは最初の命令を待ちます。claude agents でその行を選択して Space を押すか、claude attach <id> を実行します。選択された行は、待機中に space to send it a prompt を表示します。
/fork 確認は 1 行で、コピーの状態(例:session running)、そのエージェントビュー行の名前、および claude attach 用のセッション ID を表示します。名前をクリックしてコピーに切り替えます。このセッションはバックグラウンドに移動し(← を押すのと同じ)、エージェントビューはコピーのセッションを開きます。
コピーが 所定の位置で編集 する場合を除き、Claude Code はコード変更を行う前に独自の worktree を作成するよう指示します。git リポジトリの外では、hook で作成された worktree から移動されたコピーのみが指示を受けます。WorktreeCreate hook がない場合、コピーは所定の位置で編集します。worktree から移動されたコピーは、分離設定に関係なく、その worktree を編集、実行、または入力しないよう指示されます。
コピーが開始される場所は、現在のセッションが実行されている場所によって異なります:
- ディスパッチされたセッションと同様に、コピーは ファイルを編集する前に独自の worktree に移動 します。その場合、確認はコピーが実行される場所を言及しません。
- セッションが開始後にリンクされた worktree に移動した場合、コピーは移動前のセッションがあった場所に戻ります。所定の位置で編集 しない限り、独自の worktree でコード変更を行います。worktree がブランチにチェックアウトされている場合、その指示はタスクがあなたの作業に基づいている場合、新しいブランチをあなたのブランチに基づくよう指示します。あなたのブランチは worktree でチェックアウトされたままだからです。確認は
runs in the origin treeで終わります。 - リンクされた worktree 内でセッションを起動し、リポジトリにメインワーキングツリーがある場合、コピーはそのメインワーキングツリーで開始されます。同じ worktree-of-its-own ルールですが、ブランチ指示はありません。確認はここでも
runs in the origin treeで終わります。 - ベアリポジトリレイアウトの worktree 内で起動されたセッションには、戻るメインワーキングツリーがないため、コピーはそこにとどまり、確認は
edits this checkoutで終わります。worktree 分離が オフ になっているセッションで、リンクされた worktree 内にない場合も同じ注記が表示されます。コピーは開いているファイルを編集するためです。
置き換えられたシステムプロンプトや --tools 許可リストなど、コピーが継承しない起動フラグで開始されたセッションはフォークできません。Claude Code はそう言う代わりに部分的なコピーを作成します。エージェントビューからディスパッチされたセッションは通常フォークされます。コピーは、それが来たセッションと同じ エージェント定義 と追加命令で起動されます。
バックグラウンド化するときに引き継がれるもの
バックグラウンド化は、保存された会話から再開する新しいプロセスを開始し、実行中の作業がそこに移動します。実行中のバックグラウンドシェルコマンド、backgrounded subagent、動的ワークフロー、/loop で作成したスケジュール済みタスク、および Claude の artifact コメントへの自動返信 はすべてバックグラウンドセッションに引き継がれ、そこで実行し続けます。subagent はそれが開始したすべてのものと一緒に移動するため、すべての作業が移動できる場合にのみ引き継がれます。バックグラウンド化の代わりに実行中の作業を停止するには、CLAUDE_DISABLE_ADOPT=1 環境変数を設定します。Claude Code はバックグラウンド化する前に確認を求めます。
動的ワークフロー がまだ subagent を実行している場合、Claude Code は Background this session? ダイアログでバックグラウンド化する前に確認を求めます。再開するサブエージェントの数を表示します。Stay を選択して最初に完了させます。確認すると、Claude Code はバックグラウンドセッションで実行を再生成します。まだ実行中だった subagent は最初から再開するため、これまでに使用したトークンは再度費やされます。一時停止後に再開 を参照して、どの完了した subagent が保存された結果を返し、どれが再度実行されるかを確認してください。
Claude Code は、実行中の monitor など、引き継げない作業を停止し、monitor を所有している backgrounded subagent を monitor と一緒に停止します。そのような作業が実行されている場合、Claude Code は Background this session? ダイアログを表示するため、停止する前に確認できます。
バックグラウンドに入ると、セッションは新しい subagent、monitor、およびバックグラウンドコマンドを開始でき、それらは後のデタッチとリアタッチ全体で実行し続けます。
元の起動時の設定フラグはバックグラウンド化されたセッションに引き継がれるため、その MCP サーバー、設定、およびフォールバックモデルは有効なままです:
--mcp-configおよび--strict-mcp-config--settings--add-dir--plugin-dir--fallback-model--allow-dangerously-skip-permissions
セッション中に /add-dir で追加したディレクトリも引き継がれます。--allow-dangerously-skip-permissions を引き継ぐことで、バックグラウンド化されたセッションで bypassPermissions に到達可能になりますが、新しい権限は付与されません。このモードは、セッションが監視していない状態で承認なしに動作することを許可するため、権限モード、モデル、および努力 で説明されているのと同じ 1 回限りのインタラクティブな受け入れが必要です。
シェルから
--bg またはその長い形式 --background を渡してセッションを直接バックグラウンドに送信します:
claude --bg "investigate the flaky SettingsChangeDetector test"
プロンプトは -p 値ではなく、位置引数です。Claude Code は、セッションが作成される前に --bg を -p または --print と組み合わせることを拒否します。--print は claude agents がアタッチするインタラクティブセッションを開始しないためです。
特定の subagent(例:code-reviewer)をセッションのメインエージェントとして実行するには、--bg を --agent と組み合わせます:
claude --agent code-reviewer --bg "address review comments on PR 1234"
名前がいずれかの subagent と一致しない場合、起動は失敗します。Claude Code は no agent named 警告を出力し、セッションはバックグラウンド化されたと報告されますが、セッションは --agent '<name>' not found エラーで直ちに終了します。
バックグラウンド化されたセッションが後で再開または再開始されると、Claude Code はエージェントとそのツール制限を復元します。システムプロンプトについては、再開された会話のシステムプロンプトフラグ を参照してください。そのワークスペースを信頼 している場合、セッションのディレクトリでエージェントを最初に検索するため、プロジェクトスコープのエージェントは別のディレクトリから再開されたときに読み込まれます。エージェントが存在しなくなった場合、セッションはデフォルトツールで続行され、トランスクリプトは エージェントを名前付けする警告 で開きます。
既存の会話をバックグラウンドで続行するには、完全なセッション ID を --resume で渡します:
claude --resume 1f0e2c9a-6d0b-4c11-9f39-2a77c1d4e8b5 --bg "pick up where you left off and finish the migration"
Claude Code v2.1.257 以降では、Claude Code はそのセッションを同じ ID で続行するか、新しい ID でコピーを開始し、それができなかった理由を説明する note: 行を出力します。セッションが所定の位置で続行される場合、claude agents はそれに対して 1 つの行を表示します。
--bg を --continue、裸の --resume、または --resume と名前またはファイルパスと組み合わせると、Claude Code は常にそのようなコピーを開始します。目的でコピーを開始するには --fork-session を追加し、注記なしで開始します。
--name を渡して、自動生成されたセッションの代わりにエージェントビューでセッションの表示名を設定します:
claude --bg --name "flaky-test-fix" "investigate the flaky SettingsChangeDetector test"
バックグラウンド化の後、Claude はセッションの短い ID とセッションを管理するためのコマンドを出力します。バックグラウンドセッションをホストするサービスがまだ実行されていない場合、--bg はこの出力の上に Starting background service… を最初に出力する可能性があります。--name を渡すと、短い ID の後に名前が表示されます:
backgrounded · 7c5dcf5d · flaky-test-fix
claude agents list sessions
claude attach 7c5dcf5d open in this terminal
claude logs 7c5dcf5d show recent output
claude stop 7c5dcf5d stop this session
シェルコマンドを実行する
Claude セッションの代わりにシェルコマンドをバックグラウンドジョブとして実行するには、--exec を渡します。次の例は pytest -x をバックグラウンドジョブとして実行します:
claude --bg --exec 'pytest -x'
エージェントビューから、ディスパッチ入力の最初の文字として ! を入力して同じ種類のジョブをディスパッチします。! はプレフィックスとして表示され、その後のすべてがコマンドです。Enter を押してジョブを開始します。
コマンドは PTY バックアップジョブとして実行され、エージェントビューの行として表示されます。最新の出力行がそのステータスです。シェルジョブは Claude の代わりにコマンドを実行するため、モデルは呼び出されず、出力はセッションに送信されません。
出力を確認するには、行にアタッチするか、Space を押してアタッチせずにピークするか、シェルから claude logs <id> を実行します。キャプチャされた出力はメモリに保持され、ディスクに書き込まれません。行とその出力は、コマンド終了後約 5 分で自動的にクリーンアップされるため、その前に結果が必要な場合は読み取ります。
ファイル編集の分離方法
エージェントビュー、/bg、または claude --bg から開始されたすべてのバックグラウンドセッションは、作業ディレクトリで開始されます。ファイルを編集する前に、Claude はセッションを .claude/worktrees/ の下の分離された git worktree に移動するため、並列セッションは同じチェックアウトを読み取ることができますが、それぞれが独自のものに書き込みます。セッションが worktree に入ると、Claude Code は worktree 分離を強制 し、セッションとそれが生成する subagent に対して実行します。
Claude はワークツリーをスキップします:
- セッションが既にリンクされた git worktree 内にある場合。Claude が
.claude/worktrees/の下に作成したか、git worktree addで別の場所に作成したかに関係なく - Claude が編集しているファイルがリンクされた git worktree 内にある場合。セッションまたはその subagent が
git worktree addで作成したものなど - 作業ディレクトリが git リポジトリでない場合、および
WorktreeCreatehook が設定されていない場合 - 作業ディレクトリの外への書き込みの場合
git worktree が実用的でないリポジトリのワークツリー分離をオフにするには、worktree.bgIsolation を "none" に設定します。バックグラウンドセッションは、ワークツリーに移動する前に作業コピーを直接編集します。プロジェクトの .claude/settings.json に設定を追加します:
{
"worktree": {
"bgIsolation": "none"
}
}
git リポジトリの外では、セッションは作業ディレクトリに直接書き込み、互いに分離されていないため、同じファイルを編集する並列セッションのディスパッチを避けます。別のバージョン管理システムを使用する場合は、WorktreeCreate hook を設定して、Claude は git の場合と同じ方法で編集を分離します。
フックがディレクトリで失敗し、それが git リポジトリではない場合、Claude はそのディレクトリの分離をスキップし、作業ディレクトリを所定の位置で編集します。git リポジトリ内では、Claude Code はセッションが worktree に移動するまで共有チェックアウトへの書き込みをブロックします。
セッションの worktree パスを見つけるには、セッションをピークするか、アタッチして作業ディレクトリを確認します。
バックグラウンドセッションが生成する subagent は、セッションの作業ディレクトリを継承するため、そのファイル編集はセッションの worktree ではなく作業コピーに配置されます。subagent に独自の個別ワークツリーを代わりに提供するには、frontmatter で isolation: worktree を設定するか、生成時に isolation: "worktree" を渡します。
バックグラウンドセッションが Claude が入った worktree でコード変更を行った場合、Claude Code は完了する前に作業を保持するよう Claude に指示するため、セッションと worktree を削除しても生き残ります:
- コミットとプッシュ:Claude は確認なしにコミットし、リポジトリにリモートがある場合はブランチをプッシュします。
- ドラフトプルリクエスト:Claude はタスクが呼び出すときに開き、
#Nラベル が行に表示されます。 - 決して:
mainまたはmasterへのプッシュ、強制プッシュ、およびマージ。 - あなたの git 指示が優先:タスク、
CLAUDE.md、または memory があなたがコミットまたはプッシュを自分で処理すると言う場合、Claude は git をあなたに任せます。
分離されていないチェックアウトを編集するセッションは、コミットまたはブランチの切り替え前に確認を求めます。これは、分離が "none" に設定されている場合、ワークツリーの移動が失敗した場合、またはセッションが既に存在していた worktree 内で開始された場合に適用されます。
タスクに関係なく、Claude はジョブを報告で終了し、実行内容と作業がある場所を示します。パス、ブランチ、プルリクエスト、または答え自体。
セッションを削除するときに削除されるもの
エージェントビュー で Ctrl+X を 2 回押すか、claude rm で削除します。以下の保持されたケースを除き、セッションはリストから削除されます。そのトランスクリプトは claude --resume を通じてマシンに残り、削除はスーパーバイザーの再開始を通じて保持されます。
Claude がセッション用に作成した worktree に何が起こるか:
-
エージェントビューはそれを削除します。コミットされていない変更を含めて、保持したい変更をまずコミットしてください。
-
claude rmはコミットされていない変更がある場合、セッション行と一緒に保持します。 -
エージェントビューも
claude rmも、別の実行中のセッションが使用または ロックしている worktree を削除しません。再度削除してもそれは変わりません。Claude Code は worktree とセッションを保持し、保持されたディレクトリと理由を名前付けします。エージェントビューでは、セッションの行はnot deletedを表示します。別のセッションを閉じてから再度削除します。 -
セッションを削除し、その worktree に Claude Code が他の場所に保存されていることを確認できないコミットがある場合、Claude Code は worktree とセッションを保持し、メッセージは worktree のブランチと未プッシュコミット数を名前付けします。メッセージは、2 つの前進方法も提供します。コミットをプッシュするか、再度削除してそれらを破棄します。
リモートのコミットは削除をブロックしません。ローカルコピーのあなたの
originリモートのデフォルトブランチのコミットもブロックしません。そのブランチがメインチェックアウト(リポジトリディレクトリ自体、worktree ではなく)でチェックアウトされている限り。その拒否の後、あなたは選択します:
- コミットを保持するには、それらをプッシュするか、そのデフォルトブランチにマージしてから、セッションを再度削除します。
- それらを破棄するには、プッシュせずにセッションを再度削除します。エージェントビューの行で
Ctrl+Xを 2 回押すか、拒否が出力したclaude rm <id> --discard-unpushedコマンドを実行します。これはセッションと worktree をそのブランチと一緒に削除し、未プッシュコミットとコミットされていない変更を破棄します。
再度削除すると、Claude Code は拒否が示したものだけを破棄します。worktree がそれ以来コミットを獲得した場合、Claude Code は再度保持し、更新された状態を表示します。
別の完了したセッションのレコードも worktree を名前付けする場合、再度削除するときに保持されます。コミットをプッシュしてから再度削除します。
-
git が認識しなくなった worktree(例:
git worktree pruneの後)は削除をブロックしません。Claude Code はセッションを削除し、ディレクトリをディスク上に残します。 -
git またはあなたの
WorktreeRemovehook が worktree を削除できない場合、Claude Code は worktree とセッションを保持し、メッセージは原因を名前付けします。フックの場合、メッセージは終了方法(例:exited 1)を示し、stderr の開始を引用します。メッセージは、次のいずれかを実行するよう指示します:- セッションを再度削除して、エージェントビューの行で
Ctrl+Xを 2 回押すか、拒否が出力したclaude rm <id> --force-remove-worktree <worktree-id>コマンドを実行してディレクトリを削除します。Claude Code は、ディレクトリがリポジトリのリンクされた worktree の 1 つであることを確認できる場合にのみこれを提供します。.claude/worktrees/の下、追跡されたファイルへのコミットされていない変更なし、ネストされたリポジトリなし、他のセッションのレコードがそれを名前付けしていません。worktree のブランチはリポジトリに残ります。 - ディレクトリを使用しているものを閉じるなど、障害を修正し、フックを修正してから、セッションを再度削除します。
- ディレクトリを自分で削除してから、セッションを再度削除します。
- セッションを再度削除して、エージェントビューの行で
自分で作成した worktree とセッションを開始した場合は、どちらの方法でも所定の位置に残されます。
worktree ディレクトリが git リポジトリに属さないセッション(リポジトリが削除されたか、WorktreeCreate hook がディレクトリを別の場所に作成したため)は、削除できます。ディレクトリにファイルが残っている間:
- エージェントビューは削除する前に同じ
Ctrl+Xダブルプレスを要求します。hook で作成されたディレクトリの場合、代わりにWorktreeRemovehook を実行し、1 つがない場合は削除を拒否してセッションを保持します。 claude rmはセッションと worktree を保持し、理由を名前付けします。
どちらのパスでも、別の完了したセッションのレコードが名前付けするディレクトリを保持します。
モデルを設定する
エージェントビューヘッダーに表示されるモデル名はディスパッチのデフォルトです。入力から開始する新しいセッションはこのモデルを使用します。これは、ユーザー設定の model setting から取得されます。/model picker でモデルを選択して設定するか、設定を直接編集します。
エージェントビューを開く際にディスパッチのデフォルトをオーバーライドするには、--model を渡します。権限モード、モデル、および努力 を参照してください。
エージェントビューの内部からディスパッチのデフォルトを変更するには、ディスパッチ入力に /model の後にモデル名を入力して Enter を押します。ヘッダーは (session) マーカー付きでそのモデルを表示するように更新され、その後ディスパッチするセッションはそれを使用します。/model default と入力してオーバーライドをクリアし、ディスパッチのデフォルトに戻します。このオーバーライドは現在の claude agents 実行の残りの間続き、設定ファイルに書き込まれません。次の例は、1 つのセッションを Opus でディスパッチし、次のセッションを Sonnet でディスパッチします:
/model opus
refactor auth
/model sonnet
run the test suite
各バックグラウンドセッションは異なるモデルで実行できます。1 つのセッションでオーバーライドするには:
- シェルから、
claude --bgで--modelを渡します。 - 実行中のセッションにアタッチして、そこで
/modelを実行します。ピッカーから選択するか、入力した/model <name>は、ピッカーでsを押してセッションのみの切り替えを行わない限り、新しいセッションのデフォルトとして保存されます。セッションが再生成される場合、セッションのみの切り替えは保持されます。 - frontmatter が
modelフィールドを設定する subagent をディスパッチします。
権限モード、モデル、および努力
バックグラウンドセッションは、ディスパッチされた場所と方法から設定、プロバイダー、権限モード、モデル、および努力を取得します。以下のサブセクションは各ソースをカバーし、スーパーバイザーがセッションを再開始するときに何が保持されるかをカバーします。
設定とプロバイダー
バックグラウンドセッションは、そこで claude を開始した場合と同じように、実行されるディレクトリから settings を読み取ります。これには、プロジェクト設定の env values が含まれるため、そこで設定された ANTHROPIC_MODEL またはプロバイダー変数がそのディレクトリのバックグラウンドセッションに適用されます。
バックグラウンドセッションは、ディスパッチ元のシェルの PATH でも実行されるため、実行するコマンドはターミナルと同じツールを見つけます。CLAUDE_CODE_USE_BEDROCK または CLAUDE_CODE_USE_VERTEX などのクラウドプロバイダー選択、ANTHROPIC_DEFAULT_*_MODEL エイリアス、および CLAUDE_CODE_EXTRA_BODY オーバーライドもそのシェルから保持します。
LLM ゲートウェイ
LLM ゲートウェイ を通じて Claude Code をルーティングする場合、ゲートウェイ変数を設定ファイルの env ブロックに入れ、シェルでエクスポートするのではなく、バックグラウンドセッションは設定の残りと一緒にそれらを読み取ります。設定ファイルで設定 はブロックと資格情報に使用する設定ファイルを表示します。
シェルでのみゲートウェイ ANTHROPIC_BASE_URL をエクスポートする場合、スーパーバイザー 自体が同じゲートウェイをエクスポートしたシェルから開始された場合、および以下の場合にのみ、ANTHROPIC_CUSTOM_HEADERS と資格情報と一緒にバックグラウンドセッションに到達します:
←または/backgroundで独自のセッションをバックグラウンド化する- セッションをあなたがいるディレクトリにディスパッチする
- あなたがいるディレクトリで停止したセッションを起動するか、それに返信する
Claude Code はクラウドプロバイダーの前のゲートウェイを転送します。ディスパッチ元のシェルがプロバイダーを選択し、認証バイパスフラグ付きのゲートウェイエンドポイントをエクスポートする場合、Claude Code は ANTHROPIC_BASE_URL に適用される条件の下でエンドポイントとフラグペアをセッションに転送し、ANTHROPIC_CUSTOM_HEADERS と一緒に転送します。例えば、CLAUDE_CODE_USE_VERTEX=1 を ANTHROPIC_VERTEX_BASE_URL と CLAUDE_CODE_SKIP_VERTEX_AUTH=1 でエクスポートし、Claude Code はそのエンドポイントとフラグを転送します。
Claude Code は転送されたゲートウェイをそのセッションの実行プロセスにのみ適用し、ディスクに書き込みません。
権限モード
権限モード は、セッションをどのように開始したかによって異なります:
/bgまたは←でバックグラウンド化:Claude Code はセッションが入っていた権限モードを保持するため、acceptEditsまたはautoに切り替えたセッションはデタッチ後もそのモードのままです←で開いたエージェントビューからディスパッチ:ターゲットの独自の設定が最初に来て、他に何も設定しない場合、来たセッションの権限モードが適用されます- シェルで開始した
claude agentsからディスパッチするか、claude --bgで実行:新しいセッションは、ディスパッチのデフォルト で開いたエージェントビューからディスパッチしない限り、そのディレクトリで新しいclaudeセッションが開始する方法で開始されます。セッションが開始する権限モード はリストされた順序を示します
← で開いたエージェントビューからディスパッチするセッションの場合、Claude Code は以下の最初に適用されるものから権限モードを取得します:
- ターゲットディレクトリの
permissions.defaultMode。2 つのソースルールが適用されます:autoおよびbypassPermissionsは 管理設定、--settingsファイル、または~/.claude/settings.jsonからのみ有効。- Claude Code は、来たセッションが入っていたモードより許容的なモードを選択するプロジェクトの
.claude/settings.jsonまたは.claude/settings.local.jsonからのdefaultModeを拒否します。
- 来たセッションの権限モード
Claude Code がソースのモードを許容的すぎるとして拒否する場合、リスト内の次のソースが決定します。例えば、plan モードセッションから acceptEdits を要求するチェックイン設定を持つディレクトリにディスパッチする場合、新しいセッションは plan モードで開始されます。その defaultMode を ~/.claude/settings.json に移動する場合、来たセッションの権限モードに関係なく適用されます。
許容性は plan、次に Manual と dontAsk、次に acceptEdits と auto(それぞれが他より許容的と見なされる)、次に bypassPermissions を実行します。
ディスパッチのデフォルト
エージェントビューからディスパッチするすべてのセッションのデフォルトを設定するには、開く際に --permission-mode、--model、--effort、または --agent のいずれかを渡します:
claude agents --permission-mode plan --model opus --effort high
--effort ここは トップレベル --effort フラグ と同じ値を受け入れます。ultracode を含みます。
--agent は、ディスパッチプロンプトが @name または最初の単語で名前を付けない場合に使用される subagent を設定します。設定されている場合は agent setting にデフォルト設定され、そうでない場合は組み込みのキャッチオール claude エージェントです。ディスパッチ入力で subagent を名前付けすると、両方がオーバーライドされます。
claude agents は、--permission-mode bypassPermissions の短縮形として --dangerously-skip-permissions も受け入れ、各ディスパッチされたセッションの Shift+Tab サイクルで bypassPermissions を利用可能にするために --allow-dangerously-skip-permissions も受け入れます。どちらも トップレベル CLI フラグ と一致します。
--restricted を渡して、ビューからディスパッチするすべてのセッションを 制限モード で開始します。トップレベル --restricted フラグで起動したかのように。Claude Code v2.1.248 以降が必要です。
アクティブなデフォルトはディスパッチ入力の下のフッターに表示されます。
Claude Code は、セッションが監視していない状態で承認なしに動作することを許可するため、claude --bg --permission-mode bypassPermissions を拒否します。これは、claude で対話的に実行して --dangerously-skip-permissions で受け入れるまで拒否されます。claude agents に --dangerously-skip-permissions または --permission-mode bypassPermissions を渡すと、以前に受け入れていない場合は同じ免責事項が表示され、受け入れるとそのビューから起動するセッションに bypassPermissions が適用されます。--allow-dangerously-skip-permissions を渡すと、同じ免責事項も表示され、受け入れるとそれらのセッションの Shift+Tab サイクルで bypassPermissions が利用可能になります。
再開始全体で保持されるもの
バックグラウンドセッションに対して選択した権限モード、モデル、および努力は、設定フラグ と一緒に、スーパーバイザーが後で セッションのプロセスを停止して再開 するときに保持されます。claude --bg --dangerously-skip-permissions または claude --bg --permission-mode bypassPermissions で起動したセッションは、その再開後も bypassPermissions のままです。セッション中に /model または /effort で変更したモデルまたは努力も保持されます。
セッションが設定から努力を取得した場合(--effort または /effort からではなく)、Claude Code は各プロセスを開始するたびに設定を再度読み取ります。settings.json で保存された努力を編集した後、変更は ← または /bg でバックグラウンド化したセッションとそれらの後の再開に到達します。保存された努力は effortLevel キーまたは modelSettings エントリです。
Claude Code は /rename または Ctrl+R で設定した名前も、その再開全体で保持するため、claude --resume <name> はセッションを解決します。
アタッチ中に Ctrl+S で隠した プロンプトもセッションと一緒に保持されます。セッションのプロセスが停止または再開始された後、セッションを再度開き、Ctrl+S は隠されたテキストを復元します。隠しの貼り付けコンテンツは再開始を通じて生き残りません。
設定、プラグイン、および MCP サーバー
エージェントビューは、設定、プラグイン、MCP サーバー、および追加ディレクトリを読み込むための claude と同じ設定フラグを受け入れます。エージェントビューは --settings と --plugin-dir を自身に適用し、すべての設定フラグをそこからディスパッチするセッションに渡すため、この方法で読み込むプラグインまたは MCP サーバーはそれらのセッションでも利用可能です。
| フラグ | 効果 |
|---|---|
--settings <file-or-json> |
エージェントビューとディスパッチされたセッションの設定をオーバーライド |
--add-dir <path> |
追加ディレクトリへのファイルアクセスを許可 |
--plugin-dir <path> |
ローカルディレクトリからプラグインを読み込む |
--mcp-config <file-or-json> |
設定ファイルまたは JSON 文字列から MCP サーバーを読み込む |
--strict-mcp-config |
--mcp-config からのみ MCP サーバーを使用し、他の MCP 設定を無視します。managed-mcp.json での排他的制御 を参照して、フラグが管理 MCP ファイルの下で何をするかを確認してください |
--add-dir、--plugin-dir、または --mcp-config を値ごとに 1 回繰り返します。--add-dir a b c などのスペース区切り形式は claude agents ではサポートされていません。
--settings と --plugin-dir を agents の前または後に配置できます。--add-dir と --mcp-config を agents の後に保持します。agents の前にいずれかを配置する場合、claude agents --json は unknown option エラーで失敗します。
次の例は、設定オーバーライドと 1 つの追加ディレクトリでエージェントビューを開きます:
claude agents --settings ./ci-settings.json --add-dir ../shared-lib
--settings はファイルパスまたはインライン JSON 文字列を受け入れます。ファイルパスは既存のファイルを指す必要があります。Claude Code は、そうでない場合は Settings file not found エラーで終了します。
シェルからセッションを管理する
すべてのバックグラウンドセッションには、シェルから使用できる短い ID があります。ID は claude --bg でセッションを開始するときに出力され、各セッションの ID は ~/.claude/jobs/ の下のディレクトリ名です。これらのコマンドはスクリプティングまたはエージェントビューを開きたくない場合に便利です。
| コマンド | 目的 |
|---|---|
claude agents |
エージェントビューを開く |
claude agents --cwd <path> |
<path> の下で開始されたセッションにスコープされたエージェントビューを開く |
claude agents --json |
セッションを JSON 配列として出力して終了します。セッションを JSON として一覧表示を参照してください |
claude attach <id> |
このターミナルでセッションにアタッチする |
claude logs <id> |
セッションの最新出力を出力する |
claude stop <id> |
セッションを停止する。claude kill も受け入れます |
claude respawn <id> |
セッションを再開する。実行中または停止状態のセッションを再開します。例えば、更新された Claude Code バイナリを取得するため。再開されたセッションは保存された会話を再開します。ディスク上に会話がない場合は、新しい会話として元のプロンプトを再度実行します |
claude respawn --all |
すべての実行中のセッションを再開する。例えば、すべてのセッションを一度に更新された Claude Code バイナリに移動するため |
claude rm <id> |
セッションをリストから削除します。削除が安全な場合、Claude が作成した worktree も削除します。セッションの削除で何が削除されるかを参照してください。会話トランスクリプトはローカルマシンに保存され、claude --resume を通じて利用可能なままです |
claude rm <id> --discard-unpushed <commit>@<worktree-id> |
プッシュされていないコミットで削除が拒否されたセッションを削除し、worktree をそのブランチとコミットとともに破棄します。拒否が出力した正確な値を渡します。セッションの削除で何が削除されるかを参照してください。v2.1.260 以降が必要です |
claude rm <id> --force-remove-worktree <worktree-id> |
git または WorktreeRemove フックが worktree を削除できなかったために削除が拒否されたセッションを削除し、worktree ディレクトリを削除してそのブランチをリポジトリに残します。拒否が出力した正確な値を渡します。セッションの削除で何が削除されるかを参照してください。v2.1.268 以降が必要です |
claude daemon status |
supervisor の状態、バージョン、ソケットディレクトリ、およびワーカー数を出力する |
claude daemon stop --any |
supervisor プロセスとそれがホストするバックグラウンドセッションを停止します。--keep-workers を渡して、バックグラウンドセッションを実行したままにして、次の supervisor が再接続できるようにします。次の claude agents または claude --bg は新しい supervisor を開始します |
セッションを JSON として一覧表示
claude agents --json はアクティブなセッションを JSON 配列として出力して終了します。すべてのライブセッション、およびプロセスが終了した場合でも引き続き動作またはブロックされているバックグラウンドセッションが含まれます。--all を追加して、完了したバックグラウンドセッションも含めます。--cwd <path> を追加して、そのディレクトリの下で開始されたセッションに一覧を制限します。
各エントリは 1 つのセッションを説明します。
| フィールド | 存在する場合 | 説明 |
|---|---|---|
cwd、kind、startedAt |
常に | 作業ディレクトリ、interactive または background、および Unix ミリ秒での開始時刻 |
id |
バックグラウンドセッション | claude attach、claude logs、claude stop で使用可能な短い ID |
state |
バックグラウンドセッション | working、blocked、done、failed、stopped のいずれか。各値の意味についてはスクリプトからセッション状態を読み取るを参照してください |
pid、status |
プロセスが生きている間 | プロセス ID および busy、waiting、idle のいずれか |
waitingFor |
status が waiting の場合 |
セッションがブロックされている内容。承認のための permission prompt、Claude または MCP サーバーからの質問のための input needed、sandbox request、worker request、dialog open |
sessionId、name |
設定されている場合 | sessionId は claude --resume で使用可能な完全なセッション UUID です。インタラクティブセッションの name は、セッションに名前を付けるか、その中でプランを受け入れるまで、そのデフォルト表示名です |
スクリプトからセッション状態を読み取る
claude agents --json は Claude Code の外からセッション状態を読み取るためのサポートされている方法です。例えば、ステータスバー、スケジューラー、またはバックグラウンド作業を監督する別の Claude セッションから。claude agents --json --all をポーリングします。これはプロセスが終了したセッションをリストし続け、各エントリの state、status、waitingFor を読み取ります。
state |
意味 |
|---|---|
working |
ターンが実行中、またはセッションが /loop イテレーションや CI での待機など、独自に駆動する作業のステップ間にあります。status は、そのプロセスが現在 busy かどうかを示します |
blocked |
セッションはあなたを待っています。それが尋ねた質問、権限またはサンドボックスの決定、あなただけが解決できるエラー(期限切れのログインなど)、またはプロンプトなしで開始した場合の最初のプロンプト。待機がライブプロセスで開いているプロンプトの場合、waitingFor がそれに名前を付けます |
done |
最後のターンがあなたが求めたものを完了し、セッションはあなたの次のプロンプトの準備ができています。プロセスがまだ生きているかどうかに関わらず |
failed、stopped |
タスクがエラーで終了したか、セッションが停止されました |
ターンを完了し、次の指示を待っているセッションは blocked ではなく done を読み取ります。blocked は常にセッションが続行する前にあなたから何かが必要であることを意味します。
~/.claude/jobs/<id>/ の下のファイルは安定したインターフェースではありません。セッションまたは別のプログラムが state、detail、tempo、needs に書き込む値は、次の更新時に置き換えられます。
セッションが独自の言葉で進捗を報告するようにしたい場合は、state.json を編集する代わりに、例えば $CLAUDE_JOB_DIR/tmp の下など、独自のファイルを書き込むようにしてください。
バックグラウンドセッションのホスティング方法
Claude Code は、エージェントビューに表示されているすべてのセッションをバックグラウンドセッションとして扱います。現在接続しているかどうかに関わらず、バックグラウンドセッションとして扱われます。これに対して、claude を直接実行して開始したセッションはそのターミナルに紐付けられ、ターミナルが閉じると終了します。ただし、バックグラウンドに送信することはできます。
どのような種類のセッションにいるかを確認するには、/status を実行してください。バックグラウンドセッションでは、Session kind の行に background job · attached または background job · unattended と表示されます。ターミナルが接続されているかどうかによって異なります。その他のセッションでは interactive と表示されます。
スーパーバイザープロセス
スーパーバイザーはバックグラウンドサービスで、バックグラウンドセッションを実行し、エージェントビューやターミナルを閉じた後もセッションが動作し続けるようにします。Claude Code は、セッションをバックグラウンドに送信するか、エージェントビューを開いた時点で最初にスーパーバイザーを起動します。自分で管理する必要はありません。
各セッションはスーパーバイザーの下で独自の Claude Code プロセスであり、そのプロセスに何が起こるかはセッションの状態によって異なります。
- 動作中、権限プロンプトまたは他のダイアログで一時停止中、または接続中:プロセスは実行を続けます。実行中のサブエージェント、ワークフロー、またはモニターは動作中としてカウントされます。
- 終了したか、約 1 時間の間、あなたの次のメッセージを待機中で、未接続:スーパーバイザーはリソースを解放するためにプロセスを停止します。ターンを終了して質問を投げかけたセッションは、あなたの次のメッセージを待機中としてカウントされます。会話はディスクに保存され、次回接続または返信するときに、セッションは中断したところから再開されます。
Ctrl+Tでセッションをピンして、プロセスの実行を継続させます。 - スーパーバイザーが実行中に予期せず終了した:スーパーバイザーはプロセスを再起動します。自分でバックグラウンドに送信したセッションを
←または/backgroundで終了した場合、たとえばkillで終了した場合、再起動の代わりに停止済みとしてマークされます。シャットダウンで終了したセッションについては、セッションがシャットダウン後に失敗または停止として表示される を参照してください。 - 自動更新後:スーパーバイザーは新しいバージョンに再起動し、アイドル状態のセッションをバックグラウンドで移動します。動作中、あなたを待機中、または接続中のセッションは中断されません。
セッションのプロセスが停止または再起動されると、Claude が開始したバックグラウンドシェルコマンド、動的ワークフロー、およびバックグラウンドサブエージェントは次のプロセスに引き継がれます。実行中のモニターとサブエージェントが開始したシェルコマンドはプロセスで停止します。セッションを削除すると、引き継がれたすべてのものが停止します。代わりにプロセスで停止させるには、CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF を 1 に設定してください。
スーパーバイザーとそのセッションは、インタラクティブセッションと同じ保存された認証情報で認証されます。セッションに到達する設定とシェル変数(PATH を含む)については、設定とプロバイダー を参照してください。ゲートウェイエンドポイントについては、LLM ゲートウェイ を参照してください。
状態の保存場所
セッション状態は Claude Code 設定ディレクトリの下に保存されます。CLAUDE_CONFIG_DIR を設定した場合、スーパーバイザーは ~/.claude の代わりにそのディレクトリを使用し、独自のセッションを持つ別のインスタンスとして実行されます。
| パス | 内容 |
|---|---|
~/.claude/daemon.log |
スーパーバイザーログ |
~/.claude/daemon/roster.json |
実行中のバックグラウンドセッションのリスト。再起動後の再接続に使用されます |
~/.claude/jobs/<id>/state.json |
エージェントビューに表示されるセッションごとの状態。ファイルを解析する代わりに、claude agents --json を通じて読み取ってください |
~/.claude/jobs/<id>/tmp/ |
セッションごとのスクラッチディレクトリ。Claude の Write および Edit 呼び出しはここで権限を求めるプロンプトを表示しません。セッションが削除されると削除されます |
各バックグラウンドセッションには、CLAUDE_JOB_DIR 環境変数が ~/.claude/jobs/<id> ディレクトリに設定されているため、セッションが実行するシェルコマンドは、並列セッションと衝突することなく、$CLAUDE_JOB_DIR/tmp に一時ファイルを書き込むことができます。
ファイルを直接読み取らずにこの状態を検査するには、claude daemon status を実行してください。スーパーバイザーに到達可能かどうか、そのプロセス ID とバージョン、ソケットディレクトリ、およびライブバックグラウンドセッションの数を報告します。
このコマンドは、実行中のスーパーバイザーが呼び出した claude とは異なるバージョンにある場合に警告を表示します。これは、スーパーバイザーがまだ再起動していない更新後に発生します。警告は両方のバージョンを表示し、claude daemon stop --any を実行して新しいバージョンを取得するよう指示します。Claude Code が OS サービスとしてインストールされている場合、提案されるコマンドはフラグなしの claude daemon stop です。
セッションはそのバージョンの不一致を無傷で生き残ります。セッションの state.json を更新する古い Claude Code バージョンは、認識しないフィールドを保持し、セッションをリストに保ちます。ロスターの roster.json のセッションリストは同じルールに従うため、新しいバージョンで開始されたセッションは到達可能なままで、スーパーバイザーが再起動した後も入力を受け付け続けます。
エージェントビューをオフにする
バックグラウンドエージェントとエージェントビューを完全にオフにするには、disableAgentView 設定 を true に設定するか、CLAUDE_CODE_DISABLE_AGENT_VIEW 環境変数を設定してください。管理者は 管理設定 を通じてこれを強制できます。
トラブルシューティング
`claude agents` がエージェントビューを開く代わりにサブエージェントをリストする
claude agents が数を出力した後、設定されたサブエージェントを表示してから終了する場合、エージェントビューはお使いの環境では利用できません。claude update を実行して最新バージョンをインストールしてください。
更新後もエージェントビューが開かない場合は、設定または環境変数によってオフになっているかどうかを確認してください。
エージェントビューがセッションなしで開く
最初のセッションをディスパッチする前に、エージェントビューは空のセクションヘッダーを表示し、各セクションの下に説明があり、セッションリストの代わりに入力の上に 1 行の説明があります。下部の入力にプロンプトを入力して Enter を押して、最初のセッションをディスパッチします。
バックグラウンド化が `Background this session?` ダイアログを表示する
← を押して現在のセッションをバックグラウンドに移すと、Claude Code が Background this session? ダイアログを表示する場合、セッションには実行中の作業があり、バックグラウンド化によって停止、再開、または無人で実行されたままになる可能性があり、Claude Code はそれを実行する前に確認します:
- 移動できない作業:セッションには、実行中の monitor などのバックグラウンドセッションに移動できない作業があります。ダイアログは Claude Code が停止する作業を名前で表示し、別に転送されるタスクをカウントします。
- 実行中のサブエージェントを持つワークフロー:動的ワークフローにはまだ実行中のサブエージェントがあります。ワークフロー自体は転送されますが、実行中のサブエージェントは最初から再開され、ダイアログはその数を表示します。
- 自動アーティファクト返信:Claude がアーティファクトのコメントに自動で返信している場合があります。これらの返信はバックグラウンドセッションで続行され、ダイアログはそのことを表示します。
/tasks を実行してすべての実行中のものを確認し、確認してバックグラウンド化するか、Stay を選択して作業が完了するまで待機します。バックグラウンド化するときに転送されるものを参照して、どのタスク種が転送され、どのタスク種が Claude Code によって停止されるかを確認してください。
プロンプトが短すぎるとして拒否される
ディスパッチ入力は会話の開始ではなく、タスクの説明を期待しています。4 文字未満のプロンプトは Too short ヒントで拒否されるため、誤ったキー入力がセッションを開始しません。セッションで何をしたいかを説明してください。例えば investigate the flaky checkout test のようにします。
シャットダウン後、セッションが失敗または停止として表示される
マシンをシャットダウンまたは再起動すると、実行中のバックグラウンドセッションが停止します。入力を待機していたセッションは、戻ってきたときに Needs input の下に留まります。その他の実行中のセッションについては、エージェントビューが表示する内容は、最後に進捗があってからどのくらい前かによって異なります:
- 48 時間以内の場合、セッションは失敗として表示されます。アタッチまたは返信すると、中断したところから再開します。
- 48 時間以上経過した場合(マシンが数日間オフになっていた後など)、セッションは
ended while the background service was offとして停止として表示されます。行でEnterを押すと、フッターにPress enter again to resume this session (it ended while the background service was off), or ctrl+x to delete it.が表示されます。同じ行で再度Enterを押して、保存された会話を再開します。返信またはclaude attach <id>でそのフッタープロンプトなしで再開します。
トランスクリプトクリーンアップが停止したセッションの保存された会話を削除した場合、Claude Code は行を開くことを拒否します。メッセージは再開するものがないことを示しています。claude rm <id> は行を削除します。ただし、保持されたケースで説明されている場合を除き、claude respawn <id> は元のプロンプトを再度実行します。このセッションの保存された会話はディスク上にもはやありませんを参照してください。
スリープだけではセッションを停止しません。セッションはスリープ全体で保持され、スーパーバイザーはウェイク時にそれらに再接続します。
セッションを開くと、会話が既に開いていると表示される
2 つのプロセスが同じトランスクリプトに書き込むことはできません。停止したセッションの保存された会話が別の実行中の Claude Code プロセスで既に開いている場合、Claude Code はセッション自体のプロセスを開始することを拒否します。何が表示されるかは、会話を保持しているものによって異なります:
- 例えば
claude --resumeまたは/resumeで会話を再開したターミナル:行はOpen in a terminalを表示し、そこで続行するというヒントが表示され、行を開くとCan't open — this session is running in another terminalが表示されます。そのターミナルで続行するか、終了して行を再度開きます。 - 別の非インタラクティブ Claude Code プロセス(例えば、同じ会話のバックグラウンドセッションプロセスがまだ終了していない):行を開くと
This conversation is already open in another running Claude sessionが表示されます。そのプロセスを使用するか、終了するまで待機して行を再度開きます。
Claude Code は拒否された試みで入力した返信を保存し、セッションが次に開始するときに送信します。
セッションを開くと、保存されたトランスクリプトがないと表示される
別の会話からバックグラウンド化された停止したセッションが最初の応答が完了する前に停止した場合、再開するものはありません。最初の応答が完了するまで、会話はバックグラウンド化された会話にのみ存在します。claude attach は This session has no saved transcript で開くことを拒否します。
エージェントビューでは、その行を開くとリストの下に Press enter again to restart this session fresh が表示されます。同じ行で再度 Enter を押して、空の会話でセッションを再開するか、シェルから claude respawn <id> を実行します。
元の会話は無傷です。claude --resume で再開するか、それで作業を続けます。詳細については、エラーリファレンスを参照してください。
ターミナルホストが停止したか、セッションが応答しなくなった
スーパーバイザーは各バックグラウンドセッションのターミナルを独自のホストプロセスで実行します。そのプロセスが停止したか応答しなくなった場合、Claude Code は理由を表示し、再開を提供します。どちらの場合も会話は保存され、再開はそれを再開します。エラーリファレンスは完全なメッセージを引用しています。
Claude Code は、Enter からまたは claude attach から実行されるシェルコマンドを実行している行を再開しません。これはコマンドを再度実行するためです。行のメッセージと claude attach の両方は、コマンドが再度実行されないことを示しています。
ターミナルホストが停止した
Linux と WSL では、スーパーバイザーはセッションを開くかどうかに関わらず数秒ごとに各ホストプロセスをチェックし、プロセスが終了しているがスーパーバイザーへの接続が閉じられていない場合、セッションを失敗としてマークします。
- エージェントビューでは、行は
terminal host process died — press Enter to restartを表示します。それでEnterを押すと、Claude Code はセッションを新しいホストプロセスで再開します。 - シェルから、
claude attach <id>は既に失敗としてマークされたセッションを再開します。それ以外の場合は原因を報告して終了し、claude attach <id>を再度実行するよう指示します。
セッションが応答していない
スーパーバイザーが開いた状態を受け入れるが、約 10 秒間出力が到着しない場合、Claude Code は試みを終了し、再開を提供します。単にスタールしたセッション(例えば、マシンスリープ全体)はこの提供に到達しません。スーパーバイザーは開く時に自動的にそれを再開します。
- エージェントビューでは、フッターは
Press enter again to restart this session — it isn't responding (its conversation is saved and resumes).を表示します。同じ行で再度Enterを押すと、Claude Code は応答しないプロセスを停止し、セッションを再開します。その 2 番目の押下なしに何も停止しません。 - シェルから、
claude attach <id>は原因を報告して終了し、claude stop <id>を実行してからclaude attach <id>を実行するよう指示します。
セッションが `possibly low memory` ノートで開始前に失敗する
バックグラウンドセッションのプロセスが開始を完了する前に終了し、ホストのメモリが不足している場合、行のステータスは終了を名前で表示し、possibly low memory — free some up and retry を追加します。
ノートは仮説であり、確認された原因ではありません。Claude Code はプロセスがエラーを書き込まずに静かに終了し、シグナルによって停止されず、ホストがその時点で低メモリを報告した場合にのみ追加します。プロセスが終了前にエラーを書き込んだ場合、行はそのエラーを代わりに表示します。
マシンのメモリを解放してから、行にアタッチ、ピーク表示、または返信して、スーパーバイザーがセッションの新しいプロセスを開始します。メモリが低いままの場合、スーパーバイザーはアイドルセッションを停止して、独自にリソースを解放し、他のセッションを停止しても何も解放されない場合は、保持されたピン留めセッションも停止します。
エージェントビューがバックグラウンドサービスが応答しなかったと表示される
アタッチ、ピーク表示、または claude logs がバックグラウンドサービスが応答しなかったと報告する場合、スーパーバイザープロセスがスタールしている可能性があります。それを停止して、次の claude agents に新しいものを開始させてください。バックグラウンドセッションを再起動全体で実行し続けるには、--keep-workers を渡してください:
claude daemon stop --any --keep-workers
新しいスーパーバイザーは実行中のセッションに再接続します。--keep-workers がない場合、コマンドはバックグラウンドセッションも終了します。--any フラグは、デフォルトであるインストール済みサービスではなく、オンデマンドで開始されたスーパーバイザーを停止したいことを確認します。
スーパーバイザーが起動しても接続を受け入れることができない場合は、独自に終了してロックを解放するため、次の claude agents は手動停止なしで新しいものを開始します。上記の手順は、実行中のスーパーバイザーがスタールしている場合に適用されます。
コマンドが代わりに記録されたプロセスがスーパーバイザーとして検証できなかったと言って終了する場合は、報告されたプロセス ID を確認してください。それがあなたが所有するスーパーバイザーの場合は、自分で停止してから、~/.claude/daemon.lock を削除して、次の claude agents が新しく開始するようにします。
Windows では、スーパーバイザーが停止要求に応答しない場合、コマンドはそのプロセス ID を出力します。taskkill /PID <pid> でそのプロセスを終了して復旧を完了します。--keep-workers を渡した場合、バックグラウンドセッションは引き続き保持されます。
ディスパッチが `Could not resolve authentication method` で失敗する
バックグラウンドディスパッチが Could not resolve authentication method で失敗し、インタラクティブセッションが正常に認証される場合、ディスパッチを受け取ったワーカーは認証情報を取得しませんでした。バックグラウンドセッションはスーパーバイザーから認証情報を取得するため、このエラーはスーパーバイザープロセス自体で利用可能な保存された認証情報がないことを意味します。/login を実行したか、API キーを設定したことを確認してから、スーパーバイザーを停止してください:
claude daemon stop --any --keep-workers
次の claude agents または claude --bg は、保存された認証情報を読み取る新しいスーパーバイザーを開始します。/login ではなく ANTHROPIC_API_KEY などの環境変数で認証する場合は、変数が設定されているシェルからその次のコマンドを実行してください。
原因と修正の完全なリストについては、エラーリファレンスを参照してください。
macOS でバックグラウンドセッションが Desktop、Documents、または Downloads を読み取ることができない
macOS では、バックグラウンドセッションホストは独自のプロセスとして実行され、ターミナルとは別に保護されたフォルダへのアクセスをリクエストします。バックグラウンドセッションが ~/Desktop、~/Documents、~/Downloads、または別の保護された場所を読み取るときに Operation not permitted を報告する場合、System Settings の Privacy & Security > Files and Folders でアクセスを許可するか、エントリの Full Disk Access を有効にしてください。
ネイティブインストーラーを使用すると、エントリは Claude Code として表示され、許可は更新全体で保持されます。Homebrew または npm などの他のインストール方法を使用すると、エントリはバイナリパスを表示し、更新後に再度許可が必要になる場合があります。
macOS でバックグラウンドセッションがローカルネットワークホストに到達できない
macOS 15 以降では、システムはローカルネットワークアクセス権限を付与するまで、プロセスがローカルネットワーク上のデバイスに到達することをブロックします。そのため、LAN アドレスをターゲットとするコマンドは、同じコマンドがフォアグラウンドターミナルで機能していても、バックグラウンドセッションで connect: no route to host で失敗する可能性があります。バックグラウンドセッションでローカルネットワークアドレスに接続する最初のコマンドは、Claude Code の macOS ローカルネットワークアクセス権限プロンプトをトリガーします。一度許可すると、これらのコマンドはフォアグラウンドターミナルと同じ方法で LAN ホストに到達します。
セッションがアタッチ後に応答が遅い
セッションが完了し、約 1 時間アタッチされていない状態で待機すると、スーパーバイザーはリソースを解放するためにプロセスを停止します。アタッチすると、中断したところから新しいプロセスが開始され、プロセスが再起動している間にセッションにすぐに切り替わります。作業中、入力を待機しているセッション、パーミッションプロンプトまたは別のダイアログで一時停止しているセッション、またはピン留めされたセッションはこの方法で停止されることはありません。セッションを Ctrl+T でピン留めして、応答性を保つことができます。
プロセスが開始している間、Claude Code はセッションのトランスクリプトの末尾を、ライブセッションが描画する方法でフォーマットして表示します。マークダウン、ハイライトされたコードブロック、ツール呼び出しは薄暗い行として表示され、Session is starting ノートを持つ薄暗いプロンプト領域の上に表示されます。ライブセッションは準備ができるとすぐにそれを置き換えます。
`.claude/worktrees/` が満杯になっている
エージェントビューでセッションを削除すると、Claude が作成したワークツリーが削除されます。ただし、いくつかの削除はワークツリーを保持するか、そのディレクトリをディスク上に残すため、孤立したディレクトリが蓄積する可能性があります。Git がもはや認識しないディレクトリは git worktree list に表示されないため、それらを手動で削除します。
プロジェクトディレクトリで git worktree list を使用して孤立したエントリをリストし、各エントリを git worktree remove <path> で削除します。ワークツリーをクリーンアップするを参照してください。
制限事項
Agent view はリサーチプレビューであり、以下の制限事項があります。
- レート制限が適用される:バックグラウンドセッションはインタラクティブセッションと同じようにサブスクリプション使用量を消費するため、10 個のエージェントを並行して実行するとクォータが 10 倍速く消費されます。
- セッションはローカル:バックグラウンドセッションはマシンで実行され、スリープ中は保持されますが、マシンがシャットダウンすると停止します。
- Claude が作成した worktrees はエージェント view のセッションで削除される:セッションが独自の worktree でファイルを編集した場合、セッションを削除する前に変更をコミットしてください。削除によって worktree が保持される場合もあります。
関連リソース
Claude を並列実行する他の方法、および実行するセッション間で検出結果を渡す方法については、以下を参照してください。
- エージェントを並列実行:エージェントビューとサブエージェント、エージェントチーム、ワークツリーを比較
- クロスセッションメッセージング:セッション間で検出結果を相互に渡す
- Agent teams:互いにメッセージを送信する複数のセッションを調整
- Claude Code on the web:ローカルではなく、マネージドクラウド環境でセッションを実行
バージョン履歴
Agent view はリサーチプレビュー中に急速に進化しました。古い Claude Code バージョンを使用している場合、このページの一部の動作が異なる可能性があります。特に、claude agents はまだサポートしていないフラグを unknown option エラーで拒否します。下の表は各フラグと動作がいつ追加されたかをリストしています。
| バージョン | 変更 |
|---|---|
| v2.1.268 | 削除が拒否される場合、git または WorktreeRemove フックが worktree を削除できなかったため、メッセージは原因を名前で示し、フックがどのように終了したか、その stderr の開始を含みます。リポジトリの .claude/worktrees/ 下のリンクされた worktree で、追跡ファイルへのコミットされていない変更がなく、その中にネストされたリポジトリがなく、他のセッションのレコードがそれを名前で示していない場合、セッションを再度削除すると、agent view から、または claude rm <id> --force-remove-worktree <worktree-id> でディレクトリが削除されます。このリリース前は、行は worktree could not be removed (WorktreeRemove hook failed) または git のエラーのみを表示し、フックの stderr はデバッグログにのみ移動し、再度削除するのは同じ方法で拒否されました。 |
| v2.1.260 | セッションをバックグラウンド化する場合、他のセッションの agent リストは会話をバックグラウンドセッションとして 1 回表示し、それへのメッセージはもはや移動元のターミナルに到達しません。このリリース前は、そのターミナルは会話の名前の下で 2 番目の対話的なセッションとしてリストされたままになる可能性があり、移動前に会話にメッセージを送信したセッションはそのターミナルへの配信を続けました。 |
| v2.1.260 | 削除がプッシュされていないコミットで拒否される場合、メッセージは worktree のブランチを名前で示し、プッシュされていないコミット数を示し、セッションを再度削除すると worktree とそのコミットが破棄されます。このリリース前は、拒否は worktree has commits that are not pushed anywhere のみを示し、再度削除するのは同じ方法で拒否され、セッションを削除するにはコミットをプッシュするか worktree を手動で削除する必要がありました。 |
| v2.1.257 | ← は アタッチされたセッションから切り離され、/btw オーバーレイが開いている間、回答の途中でも、オーバーレイは次にアタッチするときに再度開きます。このリリース前は、← はオーバーレイが開いている間は切り離されませんでした。 |
| v2.1.257 | claude --resume <session-id> --bg を実行する場合、Claude Code はそのセッションを独自の ID で続行するか、新しい ID でコピーを開始し、理由を説明する note: 行を出力します。--continue、裸の --resume、および --resume と名前またはパスは同じメモで コピーを開始します。このリリース前は、--resume と --bg は常に新しい ID でコピーを開始し、何も言いませんでした。 |
| v2.1.257 | ← で開いた agent view からセッションをディスパッチする場合、Claude Code は ターゲットディレクトリが permissions.defaultMode を通じて設定する権限モードでそれを開始します。ディレクトリが設定しない場合、来元のセッションの権限モードが適用されます。このリリース前は、ディスパッチされたセッションは常に来元のセッションの権限モードで開始され、それをオーバーライドしました。 |
| v2.1.257 | Agent view の Ctrl+S、Ctrl+T、Ctrl+G は あなたの keybindings.json に従います。Ctrl+S と Ctrl+T は Agents コンテキストの agents:switchView と agents:togglePin アクションを通じて、Ctrl+G は Chat コンテキストの chat:externalEditor バインディングを通じて。このリリース前は、agent view は keybindings.json を無視し、これらのキーは固定されていました。 |
| v2.1.257 | バックグラウンドサービスを開始すると、2 つの障害原因から回復します。macOS npm インストールでは、自己更新中の開始は インストールを待機します。バイナリを置き換えている間に npm が配置するプレースホルダーを実行する代わりに。Windows では、マシンが最後にブートする前に書き込まれた古い daemon.lock、またはそのレコードされたプロセス ID が現在別のプロセスに属している場合、置き換えられます。このリリース前は、macOS の開始はインストールウィンドウ中に Error: claude native binary not installed. で失敗し、Windows ロックは ~/.claude/daemon.lock を削除するまで exited before it became reachable で失敗するたびに開始されました。 |
| v2.1.257 | 別の Claude Code プロセスが npm 更新をダウンロード中にバックグラウンドセッションを開くか、ディスパッチする場合、Claude Code は 最大 2 分間待機し続けます。インストールが実行され、その後 Claude Code is being updated by npm on this machine と言って失敗します。このリリース前は、待機は 10 秒で停止し、ダウンロードがまだ実行中の間に Couldn't start the background service で開始が失敗しました。 |
| v2.1.257 | クロスセッションメッセージをあなたの承認のために保持しているバックグラウンドセッションは、その Needs input 行に approve message from を表示し、送信者のアドレスと送信者が主張する名前を表示します。このリリース前は、行は Needs input に移動しましたが、前のテキストを保持したため、claude agents の何もが待機中のメッセージまたはその送信者を名前で示しませんでした。 |
| v2.1.257 | Ctrl+S でスタッシュされたプロンプトは、開かれたバックグラウンドセッション内で セッションと一緒に保持されます。そのため、Ctrl+S はセッションのプロセスが停止して再度開始された後にそれを復元します。このリリース前は、スタッシュは実行中のプロセスにのみ存在し、セッションがアイドル状態になってプロセスが停止するのに十分な時間が経過したとき、または停止して再度開かれたときに失われました。 |
| v2.1.251 | worktree に移動していないバックグラウンドセッションでは、Claude とそれが生成するサブエージェントはリンクされた git worktree 内のファイルを編集できます。 |
| v2.1.251 | Claude Code はディスパッチ元のシェルでエクスポートされたクラウドプロバイダーゲートウェイ(ANTHROPIC_VERTEX_BASE_URL または ANTHROPIC_BEDROCK_BASE_URL とその認証バイパスフラグなど)を セッションのワーカーに ANTHROPIC_BASE_URL と同じ条件で転送します。このリリース前は、そのようなゲートウェイを通じてのみ認証されたシェルからバックグラウンド化またはディスパッチした場合、セッションが行ったすべてのリクエストは失敗しました。エンドポイントとフラグがその環境から削除されたため。 |
| v2.1.251 | 別の Claude Code プロセスが プラグインマーケットプレイスをリフレッシュしている間にバックグラウンドセッションが開始される場合(マーケットプレイス自動更新を実行しているシブリングセッションなど)、Claude Code はそのマーケットプレイスのプラグインを利用可能に保ちます。このリリース前は、そのようなセッションはそのマーケットプレイスのスキル、エージェント、フック、MCP サーバーなしで開始でき、その全実行中そのままになる可能性がありました。 |
| v2.1.248 | ディスパッチ入力の Shift+Enter は改行を挿入し、メインプロンプトと一致し、Ctrl+Enter はディスパッチして、? オーバーレイが ctrl+enter to start and open をリストするターミナルで直ちにアタッチします。このリリース前は、Shift+Enter はディスパッチしてアタッチしました。 |
| v2.1.248 | セッションを削除することは、worktree のコミットが既にあなたの origin リモートのデフォルトブランチのローカルコピーにあり、メインチェックアウトがそのブランチをチェックアウトしている場合に成功します。このリリース前は、削除は has commits that are not pushed anywhere で拒否されました。 |
| v2.1.248 | ← または /background でバックグラウンド化されたセッションは、実行中に worktree の git worktree lock を保持します。このリリース前は、バックグラウンド化はロックを解放し、クリーンアップまたは git worktree remove は実行中のセッションの下で worktree を削除できました。 |
| v2.1.248 | あなたの入力を待機していなかったバックグラウンドセッションが、最後のアクティビティから 48 時間以上後に見つかった場合(マシンが数日間オフだった後など)、停止として表示されます。ended while the background service was off で、Enter はそれを再開する前に確認を求めます。このリリース前は、そのようなセッションはリストの上部にソートされた新しい障害として再度表示され、単一の Enter は数週間前の会話をフォアグラウンドに引き込みました。 |
| v2.1.248 | 停止された行を開く場合、その会話を 別のターミナルで再開した場合、Can't open — this session is running in another terminal で拒否され、行は Working の下に表示する代わりに Open in a terminal を表示します。このリリース前は、行を開くと同じ会話に書き込む 2 番目のプロセスが開始されました。 |
| v2.1.248 | バックグラウンドセッションが PermissionRequest または PreToolUse フックが無効な回答を出力している間に権限決定を待機している場合、フックイベントとスキーマエラーをその行に名前で示します。このリリース前は、行は保留中のリクエストのみを表示しました。 |
| v2.1.248 | Windows では、claude agents は以前のプログラムが win32-input-mode で残したターミナルタブで起動されたときにキーボードに応答します。このリリース前は、Claude Code はそのようなタブが送信するキーレコードをデコードしませんでした。 |
| v2.1.247 | Linux と WSL では、ターミナルホストプロセスが死亡したセッションは数秒以内に理由で失敗します。出力を生成しない開始は約 10 秒後に再開オファーで終了し、行の Enter はセッションをその会話で再開します。claude attach <id> は原因を報告して終了します。このリリース前は、そのようなセッションを開くと opening… · esc to cancel が無期限に表示され、claude attach <id> はエラーを報告せずに待機しました。 |
| v2.1.246 | npm インストールでは、バックグラウンドサービスが npm install -g @anthropic-ai/claude-code がバイナリを置き換えている間に開始に失敗する場合、Claude Code はインストールが完了するのを最大 10 秒間待機して再試行してから EACCES: permission denied を報告します。 |
| v2.1.246 | バックグラウンドサービスプロセスがエラーを出力した後に死亡する場合、Claude Code は障害を報告し、サービスの最初のエラー行を引用します。 |
| v2.1.246 | マシンが バックグラウンドサービスの開始中にスリープ状態になる場合、Claude Code は失敗する代わりに開始を 1 回再試行します。 |
| v2.1.246 | Claude Code は新しく開始された バックグラウンドサービスが生きているが接続を受け入れるのが遅い場合、45 秒ではなく約 2 分間待機します。 |
| v2.1.246 | バックグラウンドサービスはホームディレクトリから開始するため、macOS と Linux では削除または移動された開始ディレクトリはもはや開始をブロックしません。 |
| v2.1.246 | /fork は 完全な会話をコピーします。それ自体がコピーとして開始され、それ以来新しいプロンプトを記録していないセッションから。アタッチした /fork コピー、← または /background がそれをバックグラウンドに移動した後に再アタッチされたセッション、または claude --resume <id> --fork-session で開始されたセッション。このリリース前は、そのようなセッションで新しいプロンプトを送信する前に /fork を実行した場合、Claude Code は通常の確認を出力しましたが、空の会話でコピーを開始しました。そのようなセッションを ← または /background でバックグラウンドに移動すると、同じ方法で会話が失われました。 |
| v2.1.246 | ディスパッチしたばかりのセッションを開く場合、そのワーカープロセスがまだ開始中(例えば、その行の Enter を押す)、Claude Code はプロセスを待機してからアタッチします。このリリース前は、プロセスがまだ開始中に Enter を押した場合、Claude Code は Session <id> was stopped while the respawn was in flight でセッションを停止できました。 |
| v2.1.246 | 名前付きセッションを バックグラウンド化する場合、Claude Code はそれを 1 回リストし、同じ会話を再度バックグラウンド化する場合、新しい行の名前に番号を付けます(my-session (2) など)。既存の行は名前を保持します。このリリース前は、← を押したターミナルは claude agents --json で同じ名前の下で 2 番目のセッションとして表示される可能性があり、同じ会話を再度バックグラウンド化した場合、Claude Code は同じ名前の下に別の行を追加しました。 |
| v2.1.239 | vim エディターモードがオンの場合、agent view の入力で Esc を押すと INSERT から NORMAL モードに切り替わり、テキストを保持し、メインプロンプトと一致します。NORMAL モードでテキストがまだ入力にある場合、Esc を押すとそれをクリアし、空の入力で Esc を押すと終了します。Esc ショートカットが説明するように。このリリース前は、Esc は入力をクリアしました。 |
| v2.1.233 | GitLab マージリクエストにリンクされたセッションの場合、Claude Code は行のラベルを GitLab の !1234 参照構文で書き込みます。マージリクエストの URL を ディスパッチ入力に貼り付けてそのセッションを選択することもできます。このリリース前は、ラベルは #1234 としてレンダリングされ、貼り付けられたマージリクエスト URL は最初のプロンプトに URL が含まれている場合にのみセッションと一致しました。 |
| v2.1.227 | セッションを削除することは、別のライブ Claude Code セッションがその worktree ディレクトリ内で実行されている間、セッションと worktree を保持します。Agent view は行に not deleted を表示し、フッターに理由を表示し、claude rm は kept <id> を理由で出力します。これは他のセッションのプロセス ID を名前で示します。このリリース前は、セッションを削除すると、他のセッションがまだそれで作業している間に worktree が削除されました。 |
| v2.1.225 | 信頼していないディレクトリの claude agents は、agent view が開く前に、claude が起動時に表示するのと同じ ワークスペーストラストダイアログを表示します。信頼を受け入れるとそのワークスペースの信頼が保存されます。拒否すると agent view を開かずに終了します。このリリース前は、claude agents は確認なしに開かれたため、そこからディスパッチしたセッションは信頼するよう求められたことがないディレクトリで実行されました。リストがディレクトリでグループ化されている場合、行の上にマウスを置くと ディスパッチターゲットを変更せずにハイライトされます。矢印キーまたはクリックで行を選択するとターゲットが変更されます。このリリース前は、別のプロジェクトのセッションの上にマウスを移動すると、次にディスパッチされたセッションが開始するディレクトリが静かに変更されました。 |
| v2.1.221 | /status は Session kind 行を表示します。バックグラウンドセッションでは background job · attached または background job · unattended(ターミナルがアタッチされているかどうかに応じて)、他のセッションでは interactive。このリリース前は、/status はセッション種別を報告しませんでした。/fork。Claude Code は コピーに指示します。その作業を元のセッションの作業から分離するために。コピーはコード変更を行う前に独自の worktree を作成し、元のセッションが作業している worktree から離れ、その作業がその作業に基づいている場合、元のブランチに基づいて新しいブランチを作成します。正確な条件については、リンクされたセクションを参照してください。このリリース前は、コピーは分離命令を受け取らず、元のセッションがまだ作業している worktree またはチェックアウトを編集する可能性がありました。vim エディターモードがオンの場合、 u で空にプロンプトを元に戻した直後に ← を押すと、テキストを削除またはプロンプト履歴を移動するのと同じ確認を求め、2 番目の押下でのみ切り替わります。このリリース前は、押下は直ちに切り替わりました。 |
| v2.1.219 | vim エディターモードがオンの場合、空のプロンプトで ← を押すと INSERT と同様に NORMAL モードから agent view を開き、フッターの ← ヒントは NORMAL モードで表示されます。このリリース前は、ジェスチャーとヒントは INSERT のみで、NORMAL モードでは空のプロンプトで ← は何もしませんでした。Claude Code がセッションをバックグラウンド化するのを待機している間に入力に入力すると、Backgrounding cancelled — you have unsent text in the input. Send it or clear it, then press ← again. で切り替えがキャンセルされます。入力されたドラフトが失われないようにするため。 |
| v2.1.218 | 削除がプロンプトを空にした後、またはプロンプト履歴を移動した後、2 秒以内に ← を押すと、Press ← again to open agents または Press ← again to go back to agents がアタッチされたセッションで表示され、少なくとも 1 秒後の 2 番目の押下でのみ切り替わります。このリリース前は、押下は直ちに切り替わりました。貼り付けられたまたはスクリプト化された入力内に到達する ← はもはや切り替えをトリガーしません。フォアグラウンドセッションを ← でバックグラウンド化すると、Your conversation moved to the background がリストの上に表示され、agent view のルートで Esc は終了する代わりにその会話に戻ります。ダブル Ctrl+C は終了のままです。会話を再度開くことができない場合、Claude Code は終了し、それの claude --resume コマンドを出力します。Windows では、アタッチから約半秒以内に押された ← は Ambiguous ←, press again to detach を表示し、2 番目の押下で切り離されます。 |
| v2.1.217 | セッションの行のプルリクエストバッジは、Claude Code がターミナルハイパーリンクサポートを検出できない場合(例えば SSH または tmux 経由)でも、ハイパーリンクとしてレンダリングされます。FORCE_HYPERLINK=0 を設定してプレーンテキストとしてレンダリングします。このリリース前は、サポートが検出されない場合、バッジはプレーンテキストとしてレンダリングされました。 |
| v2.1.216 | /fork。確認は 1 行で、コピーの状態、agent view 行の名前、claude attach のセッション ID を表示し、runs in the origin tree または edits this checkout で終了します。コピーがメインワーキングツリーで実行されるか、開いているチェックアウトを編集する場合のみ。名前をクリックするとこのセッションをバックグラウンド化し、コピーのセッションで agent view を開きます。確認はもはやコピーの継承された権限モードを再度述べません。以前のバージョンはクリック可能な名前のない複数行の確認を出力しました。入力が必要。 /install-github-app と /mcp 設定リストは、誰もアタッチされていない間に実行され、セッションを Needs input の下に表示し、行がコマンドを名前で示し、アタッチして再度コマンドを実行すると続行されます。v2.1.208 から v2.1.215 まで、それらはその状態で完全に拒否されました。--agent 復元。バックグラウンド化された --agent セッションを再開または再開すると、エージェントのシステムプロンプトとツール制限が復元され、ワークスペースが信頼されている場合、セッション独自のディレクトリでエージェントを最初に検索します。エージェントがもはや存在しないセッションはデフォルトツールとシステムプロンプトで続行し、デフォルトエージェントに静かに戻る代わりに、表示される警告で開きます。Ctrl+X。2 回押すと、停止試行が失敗する場合でも、セッションが削除されます。失敗した停止が保留中の削除をキャンセルする代わりに、ワーカープロセスが死亡していた削除されたセッションは次のリフレッシュで再度表示されません。Worktree 削除。worktree ディレクトリが git リポジトリに属さないセッションは削除できます。このリリース前は、そのようなセッションを削除するすべての試行が拒否されました。既に消えているディレクトリはすぐにクリアされます。Agent view ダブルプレスはまだファイルがあるディレクトリを削除し、フック作成ディレクトリの WorktreeRemove フックを実行します。別のセッションのレコードもそれを名前で示さない限り。claude rm はファイルが残っている場合、常にそのようなディレクトリを保持します。 |
| v2.1.214 | ← または /background でバックグラウンド化され、実行中の何もなくアイドル状態で放置されたセッションは、他のアイドルセッションと同様にプロセスが停止されます。バックグラウンドサービスが無期限に実行されたままになる代わりに。完了したセッションは、バックグラウンドサービスがアイドル状態になった後、claude rm または agent view から削除できます。ディレクトリがディスパッチされたディレクトリが git リポジトリではない場合(マルチリポワークスペースフォルダなど)、worktree に入ったセッションは、worktree 自体が git リポジトリに属する場合、agent view から削除できます。クリーンアップはディスパッチ元のディレクトリではなく worktree から解決されるため。両方の削除は以前のすべての試行で拒否されました。停止されたセッションを再度開くと、トランスクリプトストア内のフォルダが読み取れない場合でも、保存された会話が復元されます。 |
| v2.1.213 | /install-github-app、/mcp設定リスト、MCP 認証アクションはバックグラウンドセッションで機能し、ターミナルがアタッチされている間、誰もアタッチされていない場合にのみ拒否されます。アタッチしてコマンドを再度実行するよう指示するメッセージ。v2.1.208 から v2.1.212 まで、ターミナルがアタッチされている場合でも拒否されました。 |
| v2.1.212 | 対話的なセッションの /forkは会話を新しいバックグラウンドセッションにコピーし、独自の行として表示されます。来元のセッションの後に名前が付けられるか、名前のないセッションのプロンプトされたフォークの場合、フォークプロンプトの後に。元のセッションは実行を続けます。以前のフォークされたサブエージェント動作の /fork は /subtask に移動しました。agent view がオフになっている場合、/fork はフォークされたサブエージェント動作を保持します。最初のプロンプトを待機している焦点を当てた行は space to send it a prompt を表示します。Ctrl+J は拡張キーレポートを持つターミナルのディスパッチ入力に改行を挿入します。キープレスは以前は無視されました。? オーバーレイはショートカットをリストします。対話的なセッションのフッターヒント ← は、バックグラウンドセッションが完了し、入力が必要なセッションがない場合、簡潔に N done を表示します。Agent view で裸の /resume を入力すると、agent view を開いたリポジトリの過去のセッションのピッカーが開きます。削除されたセッションを含む。1 つを選択するとバックグラウンドセッションとして再開されます。このリリース前は、/resume は agent view で利用できず、削除されたセッションは claude --resume または対話的なセッションから /resume でのみ到達可能でした。ターゲット化、スコープ化、制限されたフォームは、以前のバージョンがすべてのフォームに表示した attach to a session to run it ヒントを保持します。サンドボックスネットワークホストプロンプト、MCP 入力リクエスト、または管理設定プロンプトを待機しているセッションは、agent view と claude agents --json で Needs input として表示されます。Claude からの質問は waitingFor: input needed を報告します。権限プロンプトの代わりに。停止されたセッションにアタッチすると、ライブセッションがレンダリングする方法でトランスクリプトがフォーマットされます。生のテキストの代わりに。保存されたトランスクリプトが予期しない場所にある停止されたセッションは、保存されたトランスクリプトの最後の手段スキャンを通じて再開され、保存されたトランスクリプトがない行を開くと Press enter again to restart this session fresh が表示されます。2 番目の押下で新しく再開されます。v2.1.211 は拒否を表示し、agent view から再開する方法がありませんでした。 |
| v2.1.211 | 停止されたセッションを起動するか、それが実行されるディレクトリから返信することで、シェルのゲートウェイ ANTHROPIC_BASE_URL を再度転送します。新しいディスパッチと同じ条件で。ゲートウェイ ANTHROPIC_AUTH_TOKEN を通じて認証されたセッションはゲートウェイで再開されます。Not logged in を報告する代わりに。別の会話からバックグラウンド化された停止されたセッションにアタッチし、最初の応答が完了する前に、This session has no saved transcript で拒否されます。静かに同じセッション ID の下で空白の会話を開始する代わりに。agent view から同じ行を開くと、フッターに拒否が表示されました。Claude Code の外からプロセスを終了する ← または /background セッションはそれを停止としてマークします。スーパーバイザーが再開する代わりに、ディスク上に既に記録されている停止は、送信した返信がまだ配信を待機していない限り、尊重されます。クラッシュ後に再開されたセッションはそれが再開されたことが通知され、再開された ← または /background セッションは約 1 時間より古い中断された応答を再開しません。セッション命名返信がラベル付けする代わりに、プロンプトに答えるか拒否する場合(例えば、ほとんどがリンクであるプロンプトの場合)、破棄され、行はプロンプトテキストから取得された名前を保持します。Worktree git がもはや認識しないセッションを削除すると成功し、worktree ディレクトリをディスク上に残し、そのパスを名前で示します。すべての試行が拒否される代わりに。拒否された削除は、セッションの行に理由を表示します。worktree を削除できなかった場合の基礎となる git エラーを含む。行が静かに再度表示される代わりに。 |
| v2.1.210 | claude attach はバックグラウンドサービスが開始または再接続している間に待機します。job not found または still starting エラーで失敗する代わりに、完了中に終了したセッションを報告し、遅い接続中に行われたターミナルリサイズを接続が完了するときに適用します。プロンプトフッターの ← 入力が必要なカウントはすべてのプロバイダーに表示されます。以前に ← for agents フォームを表示していたサードパーティプロバイダーを含む。← でセッションをバックグラウンド化すると、Claude のタスクリストがバックグラウンドセッションに転送されます。ドロップする代わりに。← を押した行は、選択が移動した後も太字で薄暗くない名前を保持します。claude agents --effort は ultracode を受け入れます。静かにドロップする代わりに。 |
| v2.1.208 | プロセスが停止したセッションにアタッチすると、プロセスが開始する間、Session is starting ノートのみではなく、トランスクリプトの最後の画面分が表示されます。バックグラウンドサービスに到達できないか送信に失敗したため配信できない返信は保存され、プロセスが再度開始するときにセッションの次のプロンプトとして送信されます。このリリース前は、バックグラウンドサービスに到達できない間に失われた返信は破棄されました。独自のバイナリが更新によって置き換えられたプロセスは、Claude Code が再開されるまで失敗する代わりに、インストール済みの claude ランチャーまたはディスク上の最新バージョンからスーパーバイザーを開始できます。古いバージョンを実行しているスーパーバイザーは、新しいバージョンで開始されたアイドルセッションを独自の古いバイナリに再開しません。セッションを削除すると、セッションが worktree を別のブランチに移動した後でも worktree が削除され、worktree にプッシュされていないコミットがある場合、または別のセッションがそれを要求する場合、worktree をセッション行と一緒に保持します。コミットを破棄したり worktree を孤立させたりする代わりに。/install-github-app とその /mcp 設定リストおよび認証アクションはバックグラウンドセッションで代替案を名前で示すメッセージで拒否されます。v2.1.208 のみでは、/model ピッカーは同じ方法で拒否され、入力された /model <name> はデフォルトモデルも保存する代わりに、そのセッションのみを切り替えました。 |
| v2.1.207 | ピークパネルは行が切り詰める文で開きます。例えば、あなたを待っているセッションの正確な質問など。ブロックされたセッションがどのくらい待機しているかを、ステータス文と質問に同じタイムスタンプをプレフィックスする代わりに、単一の waiting 3m 行として表示します。ディスパッチ入力に同じテキストを再度貼り付けると、2 番目のテキストを追加する代わりに、折りたたまれた [Pasted text #N] プレースホルダーが展開されます。プランを受け入れることで名前が付けられたバックグラウンドセッションはその行にその名前を表示します。worktree に移動したバックグラウンドセッションは、プロセスが agent view から再開されるときに会話を保持します。 |
| v2.1.206 | 行の概要は行の残りの幅を埋め、64 列ではなくターミナルの右端でのみ切り詰められます。スーパーバイザーが新しい Claude Code バージョンに再開した後、残りのアイドルバックグラウンドセッションを 1 分あたり数個ではなくバックグラウンドでそのバージョンに再開します。Ctrl+X または claude rm でセッションを削除すると、スーパーバイザーのセッションリストからもクリアされるため、スーパーバイザーの再開後に行が再度表示されません。ディスパッチシェルでエクスポートされた CLAUDE_CODE_EXTRA_BODY リクエストボディオーバーライドはバックグラウンドセッションに到達します。無視される代わりに。 |
| v2.1.205 | プロンプトフッターの ← ヒントは、通常の claude セッションで、あなたを待機しているバックグラウンドエージェントをカウントします。例えば、← 2 agents。行の概要はセッション自体の 1 行レポートを表示し、64 列で切り詰められます。生のツール呼び出しまたは done/total カウントの代わりに表示されます。ディレクトリグループ化された行は色付きの状態単語で開きます。ピークパネルは完全なステータス文で開き、あなたを待っているセッションの場合、返信入力の上にその正確な質問が表示されます。gh でプルリクエストを編集、コメント、クローズ、またはレディマークするセッションはそれにリンクされます。プルリクエストを作成またはチェックアウトするセッションだけではなく、プッシュはローカルブランチ名が一致しない場合でもプルリクエストをリンクし、作成コマンドの出力がインライン制限を超えたプルリクエストもリンクされます。読み取り可能なテキストがないターンは、セッションの前の状態を保持し、Working に戻すのではなく、フリップします。claude attach は再開中のセッションを約 60 秒間待機し、理由を名前で示すステータス行を表示します。失敗する代わりに。 |
| v2.1.203 | ディスパッチシェルでエクスポートされたゲートウェイ ANTHROPIC_BASE_URL は、スーパーバイザーがそのゲートウェイ環境を共有する場合、それと同じディレクトリにディスパッチされたセッションに到達します。これは、それと一緒にエクスポートされた API キーが保持されている間にドロップされるのではなく、到達します。ディスパッチシェルの PATH は各セッションのワーカーに適用されます。サブエージェントが実行中に ← を押すと、10 秒後に再開する代わりに、それらが完了するのを待ちます。空のリストは常にセクションヘッダーを各ヘッダーの下に説明とともに表示します。ディスパッチ入力で @ を入力すると、起動リポジトリの登録済み git worktrees もそのディレクトリツリー内に存在するものをリストします。effortLevel 設定から継承された努力は、ディスパッチで固定されるのではなく、その設定への後の編集に従います。別の実行中のセッションで会話がすでに開いている停止されたセッションを開くと、行が失敗するのではなく、メッセージで拒否されます。agent view で利用できないコマンドは、入力に入力されたテキストを残します。git リポジトリの外で失敗する WorktreeCreate フックは、セッションがファイルを編集するのをもはやブロックしません。 |
| v2.1.202 | /rename または Ctrl+R でバックグラウンドセッションに設定された名前は、スーパーバイザーがそのプロセスを停止して再開しても、セッションがディスパッチされた時の名前に戻るのではなく、永続化されます。 |
| v2.1.200 | 古い Claude Code バージョンが roster.json のセッションリストを書き直す場合、新しいバージョンによって書き込まれたフィールドを保持し、既存の state.json 保証と一致するため、新しいバージョンで開始されたセッションはスーパーバイザーが再開した後も入力を受け入れ続けます。応答を停止したセッションを開くと、スーパーバイザーはそのプロセスを再開し、セッションは中断された応答を中断した場所から続行します。Agent view は agents の後に配置された --plugin-dir フラグをディスパッチされたセッションと同様に独自のサブエージェントとスキルオートコンプリートに適用します。 |
| v2.1.199 | プロセスが低メモリホストで起動を完了する前に終了するバックグラウンドセッションは、単に終了理由だけではなく、その行ステータスに possibly low memory — free some up and retry を表示します。← または /background でセッションをバックグラウンド化すると、その /color が新しい行に引き継がれます。 |
| v2.1.198 | Agent view はバックグラウンドセッションが入力を必要とする場合、完了する場合、または失敗する場合に preferredNotifChannel を通じて通知を送信し、agent_needs_input または agent_completed タイプで Notification フックを発火します。claude attach <id> 内の ← と /exit はシェルに終了するのではなく agent view に戻ります。Ctrl+Z はシェルに戻ります。バックグラウンドセッションは作業を worktree に分離し、コミットして独自の分離ブランチをプッシュし、main または master をプッシュしません。完了時に最初に確認するのではなく、ドラフトプルリクエストを開きます。/login は agent view で実行され、サインインダイアログを開きます。Background work is running 終了ダイアログは Move to background and exit を提供します。終了ハンドオフはバックグラウンドサブエージェントもカバーし、失敗として報告される代わりに次の起動時にトランスクリプトから再開します。claude --bg を -p または --print と組み合わせるとエラーで拒否されます。バックグラウンドセッションホストは、connect: no route to host で失敗する代わりに、最初の LAN アクセス時に macOS ローカルネットワーク権限をリクエストします。 |
| v2.1.196 | 単一の ← 押下がフォアグラウンドセッションをバックグラウンド化します。以前のバージョンでは 2 回の押下が必要で、フッターヒントと確認がありました。claude agents に渡された --dangerously-skip-permissions は、静かにドロップされるのではなく、バイパス免責事項を表示します。対話的なセッションで名前を付けたことがない場合は、セッションリストと claude agents --json で my-app-3f などのデフォルト名を持ちます。バックグラウンドシェルコマンドと動的ワークフローはセッションのプロセスが停止、再開、または更新されても生き残ります。Windows を含みます。ハンドオフをオフにするには CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF=1 を設定します。再開時に空として誤読されたトランスクリプトは削除される代わりに .orphaned- サフィックスで名前が変更されます。 |
| v2.1.195 | 実行中の作業は Windows でセッションをバックグラウンド化するときに転送されます。CLAUDE_DISABLE_ADOPT=1 を設定して代わりに停止します。Completed グループは残りの垂直スペースを埋め、ヘッダーは短いターミナルでコンパクトになります。古い Claude Code バージョンはもはや新しいセッションの state.json フィールドをドロップしたり、それらのセッションを claude agents から隠したりしません。停止されたセッションにアタッチすると、最大 5 秒間の空白画面を表示する代わりに直ちに切り替わります。接続を受け入れることができないスーパーバイザーは独自に終了してロックを解放します。 |
| v2.1.191 | claude --bg と --agent 名がサブエージェントのいずれとも一致しない場合、起動が失敗します。セッションは --agent '<name>' not found エラーで直ちに終了します。デフォルトエージェントで実行する代わりに。 |
| v2.1.174 | バックグラウンドセッションはスーパーバイザーの起動シェルからゲートウェイエンドポイント変数(ANTHROPIC_BASE_URL など)を継承しなくなります。スーパーバイザーはプリウォーミングされたワーカーに新しい認証情報スナップショットを提供し、誤った Could not resolve authentication method エラーを修正します。 |
| v2.1.172 | ディスパッチ入力の /model はセッションスコープのディスパッチモデルオーバーライドを設定します。 |
| v2.1.161 | 行の概要は並列作業項目の done/total カウントを表示します。ピークパネルは最も長く実行されている並列作業項目を名前で表示します。 |
| v2.1.157 | claude agents は --agent を受け入れます。ディスパッチされたセッションは agent 設定を尊重します。 |
| v2.1.145 | ピークパネル返信入力とディスパッチ入力でサポートされている音声ディクテーション。 |
| v2.1.143 | worktree.bgIsolation 設定が追加されました。claude agents は --allow-dangerously-skip-permissions を受け入れます。 |
| v2.1.142 | claude agents は --permission-mode、--model、--effort、--dangerously-skip-permissions、--settings、--add-dir、--plugin-dir、--mcp-config、--strict-mcp-config を受け入れます。 |
| v2.1.141 | claude agents は --cwd を受け入れてリストを 1 つのプロジェクトにスコープします。 |
| v2.1.139 | Agent view はリサーチプレビューとして導入されました。 |