計画を立てる
行動に移せる程度に不確実性を減らせ。計画立案を独立したプロジェクトにしてはいけない。
必要な深さを選ぶ
- 目標が不明確、または真のトレードオフがある場合: 最小限のコンテキストを調査し、制約と成功基準を特定した上で、直接的なベースラインを含む2〜4つの本質的に異なるアプローチを比較する。
- 目標は明確で、依存する作業がある場合: 発想段階を飛ばし、実行パスを書き出す。
- 1つか2つの可逆的なアクションの場合: 形式的な計画は作成しない。
結果、アーキテクチャ、コスト、可逆性を変えるような、欠けている答えだけを質問せよ。それ以外の場合は、主要な仮定を述べて続行せよ。
一つの方向に収束させる
証拠、実現可能性、ライフサイクルコスト、依存関係、可逆性、失敗の影響に基づいて代替案を比較せよ。一つのパスを推奨し、決定的な理由を明示せよ。選択された設計に、裏付けのない可能性は残すな。
実行概要を作成する
実行に必要なものだけを含めよ:
- 成果: 観測可能な結果。
- 制約と非目標: 実装を変える境界条件。
- アプローチ: 選択したパスと重要な仮定。
- 手順: 順序付けられた結果、触れるファイルやシステム、依存関係、そして最小限の有用なチェック。
- リスク: 順序変更、ロールバック、またはユーザーの選択に影響を与えるリスクのみ。
正確なコマンドやコードは、曖昧さを取り除く場合にのみ使用せよ。証拠やプロジェクト要件なしに、必須のコミット、ドキュメント、レビューア、サブエージェント、またはフルスイートチェックを追加してはいけない。
すでに権限が与えられている可逆的な作業については、実行概要を公開し、execute-work で続行せよ。破壊的、外部から見える、高コスト、またはスコープを実質的に変更する選択の場合にのみ一時停止せよ。