エージェント基盤・プロトコル

Plan-and-Executeとは|4手目で失敗したとき、やり直しは3手か6手か

Plan-and-Executeとはどういう進め方なのか1手ずつ進めるのと比べて何が得なのか計画が外れたときはどうなるのか

AIに複数手のかかる仕事をさせるとき、先に全体の段取りを決めてから動くか、1手ずつその場で考えるかで進め方が分かれます。前者がPlan-and-Executeです。

差が出るのは、途中で失敗したときです。6手の仕事の4手目で失敗する場面を数えたところ、やり直しが3手と6手に分かれました

この記事の要点

  • Plan-and-Executeは先に全体の計画を立ててから実行する進め方
  • 6手の仕事で4手目に失敗した場合、やり直しは3手と6手
  • 呼び出し回数の合計は10回と24回
  • ただし計画が途中で外れると立て直せないのが弱点

Plan-and-Executeとはどういう進め方なのか

全体の手順を先に書き出し、そのとおりに実行します。考える工程と動く工程を分けるのが要点です。

Plan-and-Executeは、先に全体の計画を立て、あとはその計画に沿って実行するだけにする進め方です。名前のとおり、計画(Plan)と実行(Execute)を分けています。

工程が2つに分かれる

最初の工程では、仕事の内容を読んで手順を書き出します。ここではまだ何も実行しません。次の工程で、書き出した手順を上から順に実行していきます。

分ける理由は明快で、手順を考えながら動くと、間違った方向に進んでいることに気づきにくいためです。Anthropicも、調査と計画を実装から分けることで、間違った問題を解いてしまうのを避けられると述べています。

いきなり動くと何が起きるか

同じ文書では、いきなりコードを書き始めさせると間違った問題を解くコードができうるとも指摘されています。手を動かし始めてしまうと、方向の誤りが表に出るのが遅くなるためです。

人の仕事でも似た経験があるはずです。とりあえず着手して、半分ほど進んだところで前提が違ったと気づく。あの手戻りを構成として避けようとしたのがこの進め方になります。

余談 計画を人が見る場を作れる

工程が分かれていると、実行の前に計画だけを人が確認できます。Anthropicの文書でも、詳細な実装計画を作らせてから進めるやり方が案内されています。危ない操作を含む仕事では、この確認の場が効いてくるでしょう。人の承認を挟む構成はHITLの記事で扱っています。

出典Claude Code Docs「Best practices for Claude Code」2026-08-17 確認
Separate research and planning from implementation to avoid solving the wrong problem.
原文Claude Code Docs「Best practices for Claude Code」 この内容の有効期限2027-02-17

4手目で失敗したとき、やり直しは3手か6手か

前提を置いて手数を数えました。途中失敗時のやり直しは3手と6手に、呼び出し回数の合計は10回と24回に分かれます。

Plan-and-Executeで何が変わるのかを、数えて確かめました。題材は6手かかる仕事の4手目で失敗する場面です。

先に断っておくと、これはモデルを動かした実測ではありません。前提を置いて手数を数え上げた計算です。前提はコードに書いてあり、そこを変えれば結果も変わります。

javascript
const TASK_STEPS = 6;      // 全体で6手かかる仕事
const FAIL_AT = 4;         // 4手目で失敗する

// 先に計画を立てる: 計画は1回。失敗したら該当ステップから再開できる
function planFirst() {
  const redoSteps = TASK_STEPS - FAIL_AT + 1;  // 4手目から最後まで
  return { planCalls: 1, stepCalls: TASK_STEPS, redoSteps, canResume: true };
}

// 1手ずつ進める: 毎回次を考える。失敗したら文脈が壊れて最初から
function stepByStep() {
  return { planCalls: 0, stepCalls: TASK_STEPS * 2, redoSteps: TASK_STEPS, canResume: false };
}
text
6手の仕事で、4手目に失敗したとき

構成            計画  実行  失敗時のやり直し  途中再開
先に計画を立てる   1回   6回           3手  可
1手ずつ進める     0回  12回           6手  不可

最後まで成功した場合の呼び出し: 7回 と 12回
失敗して再実行した場合の合計:   10回 と 24回

やり直しの量が倍違います。計画がある側は失敗した4手目から再開できるので、残りの3手だけをやり直せば済みます。

なぜ途中から再開できるのか

計画が外に書き出されているためです。どの手まで終わったかが分かるので、続きから再開できます。

1手ずつ考える構成では、次に何をするかが会話の流れの中にしかありません。ですから途中で止まるとどこまで進んだかを復元できず、最初からやり直しになります。

成功したときも差が出る

失敗しない場合でも、呼び出し回数は7回と12回で差がつきました。1手ずつ考える構成では、各手で「次に何をするか」を考える分の呼び出しが上乗せされるためです。

計画を外に書き出しておくと、失敗した手から再開できる。

単位: 回計画あり・成功時7回計画なし・成功時12回計画あり・4手目失敗10回計画なし・4手目失敗24回6手の仕事での呼び出し回数。前提を置いた数え上げで、モデルの実測ではない。
図1 ── 4手目で失敗したときのやり直し量
出典Claude Code Docs「Best practices for Claude Code」2026-08-17 確認
Letting Claude jump straight to coding can produce code that solves the wrong problem.
原文Claude Code Docs「Best practices for Claude Code」 この内容の有効期限2027-02-17

計画が外れる仕事には向かない

手順が始める前に書き出せるかどうかで決まります。書き出せないなら、計画そのものが無駄になります。

ここまでの数字だけを見るとPlan-and-Executeが有利ですが、その前提には「計画どおり進む」が含まれています

前提が崩れると計画は変わらない

先に立てた計画は、実行の途中で状況が変わっても更新されません。在庫があるつもりで立てた段取りは、在庫が0だと分かってもそのまま次の手に進んでしまいます

この弱点は結果を見ながら進める構成の裏返しで、ReActパターンの記事では実際に「在庫0の商品に明日発送します」と答える例を扱っています。

使い分けの基準

  1. 手順が始める前に書き出せる仕事。請求書の作成、定型の集計、決まった順の確認作業
  2. 手戻りの代償が大きい仕事。途中でやり直すと時間や費用が大きく増えるもの
  3. 人に計画を見せたい仕事。実行前に段取りだけ確認したい場合
  4. 調べてみないと次が決まらない仕事。計画を書き出せない

4番目に注意してください。書き出せない手順を無理に計画させると、当てずっぽうの段取りができるだけです。

長い仕事では計画が消える

実装上の落とし穴がひとつあります。会話の履歴が上限に達すると古い部分から削られるため、最初に立てた計画が消えることがあります。

対策は単純で、計画を会話の外に保存しておくことです。ファイルでも記録用の領域でもかまいません。実行のたびに読み直せる場所に置いてください。

手順が書き出せない仕事に計画を立てさせても、当てずっぽうが増えるだけ。

手順を始める前に書き出せるかいいえ結果を見ながら進める構成にするはい計画を会話の外に保存できるかいいえ先に保存先を決めるはい計画を立ててから実行。完了を記録する6手を超える長さになると、計画が履歴から消える問題が現実に出てくる。
図2 ── 計画を先に立てるかどうかの判断
計画と実行のずれを記録する計画したとおりに実行できたかを記録に残しておくと、どの手で計画が外れたかが後から分かります。外れる手が毎回同じなら、計画の作り方に原因があります。記録の設計はエージェント可観測性の記事で扱っています。
出典Claude Code Docs「Best practices for Claude Code」2026-08-17 確認
Ask Claude to create a detailed implementation plan.
原文Claude Code Docs「Best practices for Claude Code」 この内容の有効期限2027-02-17

よくある質問

計画は誰が立てるのですか
多くの実装ではモデル自身が立てます。仕事の内容を渡して手順を出させ、その手順に沿って順に実行させる形です。人が計画を確認してから実行に移す構成もあります。
計画が間違っていたらどうなりますか
間違ったまま最後まで進みます。ここがこの進め方の弱点で、途中で前提が崩れる仕事には向きません。その場合は結果を見ながら進める構成のほうが適しています。
計画を途中で作り直すことはできますか
できます。実行の途中で計画を見直す構成もありますが、見直すたびに呼び出しが増えるため、1手ずつ考える構成に近づいていきます。
計画は保存しておく必要がありますか
長い仕事では必要になります。会話の履歴が上限を超えると古い部分が削られるため、計画が消えることがあるためです。

まとめ

  • Plan-and-Executeは計画を先に立てて順に実行する進め方
  • 途中失敗時のやり直しは3手と6手で差が出た
  • 呼び出し回数の合計も10回と24回で差が出た
  • 有利なのは手順が読める仕事だけ。読めないなら計画自体が無駄になる

今日から始められること

  1. 自動化したい仕事の手順が、始める前に書き出せるかを確かめる
  2. 書き出せるなら、計画を立てる工程と実行する工程を分ける
  3. 計画を実行の前に人が確認する場を作るか決める
  4. 失敗した手から再開できるよう、各手の完了を記録する

実務で組んだPlan-and-Executeのワークフローには、値段が付きます

同じ課題を持つ会社にとって、動いている設定は「作る時間」を買えるということです。ServiceDockは自作のワークフローやテンプレートを出品できるマーケットプレイスです。手数料や出品の流れは出品者向けページにまとまっています。

出品の仕組みを見る