コンテンツにスキップ

セッションを中断して再開する

エージェントが誤った方向に進んでいるとき、いつまでも待っているとき、あるいは追加の指示が必要なときに、これらの操作を使います。これらは既存の会話に作用します。新しい会話を作るにはリモートのエージェントで作業を始めるを使ってください。

Chorus daemon ではなく元の Hermes ゲートウェイを復旧します。Interrupt はゲートウェイ作業を中止し、Resume は Hermes 継続ターン対応サーバーを必要とし、元のリポジトリを使います。再開前に途中の変更を確認します。

バックグラウンド子エージェント(0.22.0)

Section titled “バックグラウンド子エージェント(0.22.0)”

Claude daemon 実行では主ターン後に既定で 60 分(3600000 ms)子を待ちます。CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS が CHORUS_CLAUDE_BG_WAIT_CEILING_MS より優先し、実行全体の制限ではありません。親は完了結果を集めるか子を明示的に停止してからターンを終了します。子が強制終了されれば実際の終了コードがゼロでも異常となり、起点のアイデアやタスクにコメントしようとします。状態修復や新たな自動再試行はありません。ゼロ・空値の危険、設定、診断は daemon のタイムアウト設定を参照してください。

  1. 実行中の会話を開きます。
  2. 最新の出力を確認し、中断が必要かを見極めます。
  3. 中断(Interrupt)を選びます。
  4. 会話が実行の停止を報告するまで待ちます。
現在のターン、経過時間、中断コントロールを表示している実行中のエージェントの会話
実行中の会話には、現在のターン、経過時間、中断コントロールが表示されます。

中断はまず、エージェントのプロセスに正常に止まるよう求めます。設定されたタイムアウト内に止まらない場合は、デーモンがそのプロセスを終了させます。

プロセスが終了したのに会話が実行中のままなら、その会話で中断を選びます。 稼働中の実行が一覧にない場合も使えます。Chorus に停止できる実行がない場合はターンを 直接中断済みにし、それ以外はデーモンに停止を依頼して結果を待ちます。

Chorus は、ターン終了の報告が一時的に失敗した場合に再試行します。また、エージェントが起動した バックグラウンドプロセスがまだ動いていても、エージェントのプロセスが終了した時点で終了したものとして扱います。 これらはいずれもターンの実行時間を制限しませんが、バックエンド固有の制限は適用されます。DeepSeek Harness (dsh)は既定で 1 ターン 30 分で、CHORUS_DSH_TIMEOUT_MS で変更できます。 再開前に最終出力と残っているプロセスを確認してください。

Chorus 0.21.0 以降、起動や実行に失敗すると、返信がなくても会話のターンにエージェントの起動・実行に失敗という要約が表示されます。利用可能ならエラーの詳細を表示を選び、記録された診断出力、終了コード、シグナルを確認します。診断はターンとともに保存され、再読み込みや会話を開き直した後も確認できます。

詳細が常にあるとは限りません。旧ターンや診断を取得できなかった失敗には一般的な説明を表示し、ユーザーによる中断はクラッシュとして扱いません。要約に応じて作業ディレクトリ、バックエンドのログインやモデル設定、認証情報を確認し、必要なら chorus daemon logs を使います。失敗してもファイルや外部操作は元に戻らないため、再開前に途中の変更を確認してください。診断には機密情報が含まれ得るので、共有前に伏せてください。

再開する前に、次を行います。

  • エージェントの最終出力とエラーの詳細を読みます。
  • 変更されたファイルと、実行中のプロセスがあれば確認します。
  • 続けるか、修正した指示を与えるか、あるいは通常のバージョン管理のワークフローで途中までの変更を破棄するかを判断します。

最初のセッションが何を変更したかを理解するまでは、同じディレクトリに対して二つ目のセッションを始めないでください。

会話が中断された状態か、クラッシュ後に復旧可能な状態のときは、次の手順で再開します。

  1. 元のデーモン接続がオフラインなら復旧させます。
  2. 同じ会話を開きます。
  3. 修正や欠けていた文脈があれば追加します。
  4. 再開(Resume)を選びます。

再開は、元のエージェント接続と作業ディレクトリを使います。セッションを別のマシンやディレクトリへ移すことはありません。元のランタイムを復旧できない場合は、新しいセッションを明示的に始め、前回の試行から必要な文脈を引き継いでください。

繰り返し失敗する場合は、エージェント接続のトラブルシューティングを使ってください。

UI 内の再開(Resume)ボタンの代わりに、自分のターミナルから会話を続けることもできます。会話を開き、トランスクリプトのヘッダーでセッション ID をコピーを選びます。コピーされるのはエージェント CLI 自身が再開に使うセッション ID なので、手動で再開しても新しい会話は始まらず、同じ会話に戻れます。

会話が実行されていた作業ディレクトリで、コピーしたセッション ID をバックエンドの再開コマンドに渡します。

  • Claude Code — claude --resume <sessionId>
  • Codex — codex exec resume <thread_id>
  • Kiro — kiro-cli chat --resume-id <sessionId>

ID の形式はバックエンドごとに異なりますが、コピーされる値はそのバックエンドが受け付ける形式になっています。正確なコマンドは、各プラットフォームのリファレンスページ(Claude Code、Codex、Kiro)をご覧ください。

Chorus は着想ごとにセッションを一つだけ保ちます。別の作業ディレクトリからその着想の作業を始めても、Chorus は新しいセッションを始めるのではなく、その一つのセッションをそのディレクトリへ移します。そのため、最後にどこで実行されていたかにかかわらず、引き継ぐ会話は常に一つだけです。全体の仕組みはオンラインエージェント総覧をご覧ください。