プランモードを使う
このガイドでは、エージェントがコードを書く前に、構造化されたプランを受け取る 方法を説明します。
プランモードでは、エージェントは読み取り専用で調査し、その唯一の成果物は 型付きプランです。あなたが承認するステップの依存関係グラフであり、 Control Center がそれを実際の作業にコンパイルします。変更の範囲を確認したい とき、ステップを分解してほしいとき、あるいは何かに手を付ける前にリスクと 依存関係を明らかにしたいときに使います。
スペースをプランモードに切り替える
「スペースをプランモードに切り替える」というセクション次のいずれかでスペースのモードが切り替わり、変更は永続化されます:
- コンポーザーのツールバー左端にあるモードドロップダウンから プランを選択する
- Shift+Tab を押す
/planを送信する。単独の/planはモードを有効にするだけです。/plan <request>はモードを有効にし、残りをあなたのメッセージとして送信します
/plan がテキストとして送られることはありません — これは保存されたモードを
設定するものであり、ツールサーフェス、ガードプリセット、プロンプトが
そろって参照する権威です。したがってモードは、あなたが元に戻すまで、この
ターンとそれ以降のすべてのターンにわたって維持されます。
モードはスペースに保存されるため、同じエージェントがここではプランモード、 別の場所ではエージェントモードになることができます。
エージェントが生成するもの
「エージェントが生成するもの」というセクション- 読み取り専用で調査します — メモリ、コードインデックス、ファイル
submit_planを一度だけ呼び出します。goalとnodesを伴い、各 ノードは安定したkey、title、description、およびdependsOnする ノードキーを持ちます(これにより独立した作業を並列で実行できます)- 停止します
このツールはグラフを検証し(重複したキー、宙に浮いた依存関係、循環)、 壊れたプランを受け入れるのではなく、エージェントが修正すべき違反を返します。
プランは会話の中にコンパクトな行として表示され、ゴール、そのステータス、 ステップ数を示します。Plan Studio — 依存関係グラフ、ノード単位の インスペクター、コスト見積もり — は会話の横にタブとして開きます。行の 開くを押すか、あるいはただ待つだけです。会話を眺めている間に 30 秒以内に 届いたプランは、自分でタブを開くからです。
ここでは散文は成果物ではありません。submit_plan を呼ばずに終わった実行は、
会話に「Ended without submitting a plan (no submit_plan call).」という目に
見える行を投稿し、その実行が成果物を逃したものとしてフラグを立てます。実行の
ステータスは意図的に completed のままです — これによりパイプラインと
チケットのステートマシンが変更されずに済みます — ので、ステータスバッジでは
なく行を読んでください。
プランを承認する
「プランを承認する」というセクション会話の中のプランの行から 承認して実行を押します。Plan Studio の承認バー では プランを承認を押します(その横の 却下でもかまいません。グラフに 検証エラーがある間は承認は無効です)。
その後は次のとおりです:
- Control Center はプランをオーケストレーションにコンパイルし、それを マテリアライズします — チケットと実行です。このステップにモデルは 関与しません。決定論的です
- プランは、それを書いたエージェントとして実行されます。ほかの誰かを
関わらせるかどうかは、実行時にそのエージェントが判断します — ワークスペースの
委任の深さ上限の範囲内で、
delegate_taskによってステップをより適した チームメイトに任せられます - プランのゴールは会話のゴールになり、作業はその同じ会話の中で 実行されます。各ステップはエージェントが依頼された内容を投稿し、その ターンをストリーミングで返すため、あなたはすでにいる場所でそれを追い (ターンを停止もでき)ます
- 会話の一般サイドパネル(やることの下)のゴール行に、実行の進捗が
settled/totalとして表示され、停止ボタンもあります。Plan Studio は グラフ上にノード単位の状態を表示し、そこでもキャンセルできます
承認せずに作業を続ける
「承認せずに作業を続ける」というセクションプランを承認するよりもこの会話にとどまりたい場合、エージェントは
exit_plan_mode を呼べます。これが唯一認められた出口です。会話に紐づいた
永続的な承認リクエストを開き、pending を返します — スペースはプランモードの
ままで、エージェントは行動してはなりません。リクエストが承認されると、
エージェントの次の exit_plan_mode 呼び出しがスペースをプランモードから
エージェントモードへ切り替え、その変更系ツールを解放します。却下された場合は、
修正されたプランに対して新しいリクエストを開けます。
プランモードを抜けるには、コンポーザーのドロップダウンを切り替えるか
(または Shift+Tab)、提出されたプランを承認します。exit_plan_mode は、
decide_approval MCP ツールで決定される永続的な承認を開きます。ブロックされた
ツール呼び出しに対するガードレールのオーバーレイは、別のインメモリキューであり、
プラン終了のリクエストを運びません。
パイプラインステップでのプランモード
「パイプラインステップでのプランモード」というセクションmessaging.createSpace パイプラインノードは、ノード設定の mode エクストラ
から会話モードを読み取ります — extras['mode']: 'plan'。このキーは完全一致です。
conversationMode や dispatchMode を含め、ほかの綴りは黙って無視され、ルームに
はボディのデフォルトが適用されます。それは chat ではなく review モードです。
promptAgent ステップは、自分が作成していないルームに参加し、その権限を変更
しません。ノード設定エディタの ディスパッチモードセレクト(allParallel /
manager)は、チームディスパッチノード用です。会話モードは、スペースを開く
テンプレートで、または API 経由でそのノードの設定で、extras['mode'] を使って
設定します。