コンテンツにスキップ

Plan Studio で作業する

このガイドでは、Plan Studio でプランを扱う方法を説明します。オーケストレーションとプランドキュメントとは何かについては、オーケストレーションとプランモードを使うを参照してください。

プランはそれを生成した会話に属するため、通常はそこからたどり着きます。会話内のプランの行には開くアクションがあり、Plan Studio が会話の隣にエディタータブとして開きます。

ハブには 3 つのセクションがあります:

  • アクティブなプラン — オーケストレーション。提案中のものが先頭に表示され、ステータス、ステップ数、リビジョン番号が付きます。
  • プランドキュメント — 単一のエージェントがプランモードで submit_plan を使って送信したプラン。提案中または承認済みの間に表示されます。
  • プレイブック — 保存された、パラメータ化されたプランテンプレート。

カードをクリックすると Plan Studio で開きます。ルートは /workspaces/<workspace-id>/plans/<kind>/<plan-id> で、kind は orchestration または document です。そのため、単一のプランにもディープリンクできます。

オーケストレーションを開いた場合は、編集可能なキャンバス、バージョンのタイムライン、承認バーが表示されます。プランドキュメントを開いた場合は、同じグラフが読み取り専用で描画されます。プランドキュメントはエージェントが作成するもので、あなたはレビューと見積もりを行い、承認または却下します。承認されたドキュメントには、それがコンパイルされた先のオーケストレーションから、ノードごとの実行状態がライブで表示されます。

編集できるのは、オーケストレーションが proposed である間だけです。キャンバス上の編集はすべてキーボードで行います:

  1. キャンバスをクリックし、方向キーで選択範囲を移動します。
  2. n を押すとステップが追加されます。選択された状態で「新しいステップ」として表示されるので、右側のインスペクターで名前を変更します。
  3. 先に実行する必要があるステップで e を押し、次に依存するステップをクリックする(または選択して Enter を押す)と、依存関係が接続されます。保留中の接続を破棄するには Esc を押します。
  4. x を押すと、選択したステップの最新の依存関係が切断されます。インスペクターの依存関係エディターで厳密な依存関係を切り替えることもできます。
  5. Delete を押すと、選択したステップが削除されます。そのステップへの参照は、残りのステップの依存関係から取り除かれます。

インスペクターでは、ステップの説明、ロール、出力スキーマも編集できます。編集内容は少し間を置いてから新しいリビジョンとして自動保存されます。検証エラー(承認バーに表示されます)がある間は、修正するまで保存がブロックされます。

編集できるのは作業ステップだけです。構造ノード(調査、ディスカッション、統合)は読み取り専用で、作業がすでに実行されたステップも同様です(編集するとプランがその時点からフォークされるため、「実行済み」とマークされます)。

保存は、開始時点のリビジョンに対する楽観的同時実行制御で行われます。オーケストレーターがその背後で再プランすると、保存はマージや無言の上書きではなく「the plan moved on」として拒否されます。現在のリビジョンを読み直して、編集をやり直してください。エージェントが開始した再プラン自体も 2 分に 1 回にレート制限されているため、この状況はほとんど起こりません。

承認バーで見積もりを押します。

  • キャンバス上の各ステップには、コスト範囲とその根拠となるサンプルサイズを示すバッジが付きます。ステップのロールが一度も実行されていない場合は「履歴はまだありません」と表示されます。ステップを選択すると、インスペクターに詳細が表示されます。サンプルサイズ付きのコスト範囲、所要時間の範囲、そしてステップの由来から導かれる影響範囲(ファイルとシンボル)です。ステップに由来情報がない場合は「不明」となります。
  • 承認バーにはプランの合計が表示されます。全体のコスト範囲、クリティカルパスの所要時間範囲(並列ブランチは重なるため、これは合計ではありません)、そしてプランが設定している場合は予算上限です。
  • 一部のステップにだけ履歴がある場合、合計は部分的とマークされ、見積もり可能なステップだけを対象とします。見積もりの上限が予算上限を超える場合、合計は赤くなり、予算超過の警告が表示されます。

見積もりは誠実であるか、存在しないかのどちらかです。完了済み実行履歴がないロールのステップは、サンプルサイズ 0 を報告し、範囲をまったく示さず、推測されるのではなく不明として表示されます。「履歴はまだありません」は「安い」ではなく「誰も知らない」と受け取ってください。

予算上限は、この見積もりに対する表示上の比較にすぎません。プランの実行が始まると、それを強制するものは何もありません。実際に支出を止める制御についてはコスト管理を参照してください。

すべての編集と、オーケストレーターによるすべての再プランは、追記専用のリビジョンタイムラインに追加されます。これはオーケストレーションプランの左側にあるバージョンパネルに表示されます。

  1. リビジョンをクリックすると、現在の提案と差分比較されます。何も選択していない場合、パネルは前のリビジョンと現在のリビジョンを比較します。
  2. パネルの下半分で差分を確認します。2 つのリビジョン間で追加、削除、変更されたステップが表示されます。
  3. プランがまだ proposed の場合、リビジョンの巻き戻しアイコンをクリックするとそのリビジョンに戻ります。巻き戻すと、その提案は新しいリビジョンとして保存されます。失われるものはありません。

propose_orchestration とエディターはどちらも、プランが proposed でなくなると変更を拒否します。そのため、実行中のプランが実行途中の再プランを取り込むことはありません。

アプリでは、提案されたプランはひとまとまりの 1 つの判断です。承認バーのプランを承認または却下を選びます。プランを承認は常にすべてのステップを承認し、先にサブセットを選択する方法はありません。提案に検証エラーがある間は承認がブロックされ、エラーはボタンの隣に表示されます。

承認はオペレーター専用です。そのための MCP ツールはないため、エージェントはプランを提案し改訂できますが、承認することはできません。

オーケストレーションが実行中になると、バーが変わります:

  • 実行の途中でステップが質問のために停止した場合、それを選択してノードを継続を押すと再開します。
  • 選択を承認を押すと、_部分的_な承認を、選択したステップとそれが推移的に依存するすべてのステップにまで広げます(ステップはその依存関係なしに承認されることはありません)。このコントロールはすべてのオーケストレーションの実行バーにあり、プランが全体として承認されている場合は何も行いません。
  • 実行をキャンセルを押すと、オーケストレーション全体を停止します。

部分的な承認セットに含まれないステップは延期として描画され、セットを広げるまで実行されません。

プレイブックは、ゴール、ステップのタイトル、説明、プロンプトに型付きの {{param}} プレースホルダーを持つ、保存されたプランテンプレートです。置換はリテラルで、式言語はありません。ロジックが必要な場合は、代わりにパイプラインを使用してください。

  1. ハブのプレイブックセクションで、プレイブックの実行を押します(または ⌘K パレットを開いて、そこでプレイブックを選択します)。
  2. パラメータを入力します。列挙型のパラメータはドロップダウンで表示され、リポジトリとエージェントのパラメータはリポジトリまたはエージェントの参照を受け取り、省略可能なパラメータはデフォルト値が使われます。
  3. プランを提案する対象となるアンカーチケットを選び、確定します。

プレイブックの実行はプランを提案するだけです。インスタンス化されたオーケストレーションは proposed として Plan Studio で開き、そこで承認するまで何も実行されません。プレイブックを削除するには、そのカードのゴミ箱アイコンを押します。

エージェントは create_playbook と run_playbook の MCP ツールでプレイブックを作成、実行します。詳しくは MCP ツールを参照してください。