AIコーディングに関する議論の多くは、「モデルがどれだけうまくコードを書けるか」に焦点が当たっています。
しかし実際には、多くの失敗は「悪いコード」から生じるのではありません。
原因は悪い計画です。
問題
私は実開発の作業でClaude Codeや同種のツールを使ってきました――データパイプライン、Cloud Runのジョブ、API連携などです。
いつも繰り返し見えてきたパターンがありました:
モデルは、欠陥のある計画でも非常に説得力をもって実装できてしまう。
コードはこう見えます:
- きれい
- 完成している
- 構造化されている
- 「もっともらしい」
しかし後になってシステムが失敗するのは、元の計画に次のような問題があったからです:
- 隠れた前提
- 抜けているエッジケース
- 不明確なロールバックのロジック
- 依存関係の失敗シナリオ
- 未定義の影響範囲(ブラスト半径)
この時点で直すのは、はるかに高コストになります。
小さな実験
私は、シンプルなアイデアを試し始めました:
実装の前に計画自体をレッドチーム(攻撃側に回して検証)する。
1つのモデルに「自己レビュー」をさせるのではなく、同じ計画を複数のモデルに送ります:
- Claude
- Codex
- Gemini
それぞれのモデルが、独立して計画をレビューします。
そして、見つかった内容を1つのレポートに統合し、コードを書く前に計画を修正します。
ワークフロー
完全なループはこちらです:
- 実装の計画を生成する(Claude Codeまたは同様のもの)
- 計画を複数のモデルに送る
- 各モデルが独立してレビューする(共有コンテキストなし)
- 調査結果を集める
- 問題を統合し、優先順位を付ける
- 計画を修正する
- その後にのみ実装を開始する
注目すべき点
各モデルは本質的に、計画を壊しにいこうとしています:
- 隠れた前提
- 境界条件
- 依存関係の失敗
- 誤用シナリオ
- ロールバック/リカバリの抜け
- データ整合性の問題
学んだこと
1. 異なるモデルは、異なる失敗モードを見つける
これが最大の驚きでした。
各モデルには、何を「気づくか」に関する独自の「バイアス」があります。
2. 最も価値のある発見は、しばしばユニークなもの
全てのモデルが同意しているものではありません。
むしろ、1つのモデルだけが見つけたものです。
それらは、他のモデルが見落とした死角を表していることが多いです。
3. これは自己批判よりもうまく機能する
1つのモデルに、自分の計画をレビューさせるのも役に立ちますが、限界があります。
並列で独立にレビューするほうが、はるかに強力です。
私が踏んだ実際の落とし穴
ある時点で、Claudeにサブエージェントを使って計画を生成させました。
すると「計画エージェント」が立ち上がって、作業を始めました。
その後、何も起きませんでした。
私はただ利用量が増えるのを見ているだけでした……5時間分の利用上限に当たるまで。
出力はゼロ。
何が起きたのか尋ねると、答えはこうでした:
出力が長すぎて応答上限を超えたため、再試行を続けていました。
これは重要な教訓でした:
大きな出力はチャットメッセージとして返してはいけません。
ファイルに書き込み、応答では要約だけを返すべきです。
最小の修正(CLAUDE.md)
私は最終的に、CLAUDE.mdに次のように追加しました:
## ツールの使用
- サブエージェントや外部ツールからの大きな出力(>10KB)はリポジトリのファイルに書き込むこと。
- 完全な内容をそのままチャットで返さないこと。
- メッセージには次だけを含めること:
- ファイルパス
- 要約
- 重要な発見
- 次のステップ
これはフレームワークではない
このアプローチは意図的にシンプルです。
- オーケストレーションシステムなし
- マルチエージェントのフレームワークなし
- プラットフォームなし
やっているのは、軽量なパターンだけです:
実行の前に構造化された疑いを追加する。
役に立つとき
これは特に次に有用です:
- データパイプライン
- デプロイのワークフロー
- API連携
- ロールバックや失敗コストがあるシステム
やりすぎのとき
おそらく次のような場合には、これを必要としません:
- 手早いスクリプト
- 使い捨ての実験
- リスクの低いコード
書き起こした
私はこのワークフローを小さなリポジトリにまとめました:
https://github.com/permoon/multi-model-redteam
そこには以下が含まれています:
- 最小限のセットアップ
- レッドチームのレビュー用パターン
- 例のケース
- 単純なマルチモデルのレビュー用スクリプト
未解決の問い
AIコーディングツールを使っている人向けに:
コーディングする前に実装計画をレビューしていますか?
それとも、モデルにすぐ作り始めさせていますか?
他の人がどう対処しているのか気になります。


