良いAI支援開発はタスクレベルではなくシステムレベルで起こる

Redditユーザーのu/johns10davenportは、AI支援開発における真のレバレッジはプロンプトの改善ではなく、システムを変えることにあると主張しています。著者はよくあるフラストレーションを語ります:Phoenixアプリに新機能を追加するたびに、AIコーディングエージェントは機能を実装するものの、メニュー項目を追加し忘れるのです。ページは存在し、機能は動作するが、ユーザーがそこにたどり着く方法がないのです。
タスクレベルの修正の問題点
最初の直感は「ボタンを追加して」とモデルに指示することです。それは効果がありますが、人間がまだ思考しています——問題を診断し、修正を指示しているのです。著者はこれを「Anthropicにフリートークンをもらうためにペロトンを漕いでいる」と呼びます。プロンプトエンジニアリングは、モデルに何をすべきかを伝える能力を高めるだけで、依然として人間がモデルのために働いているのです。
システムレベルのシフト
欠落したボタンを修正する代わりに、著者は「将来このミスを不可能にするにはどうすればよいか?」と考えました。彼らの解決策は、BDDスペックとPhoenix LiveViewテストヘルパーを利用したものです。テストフレームワークのnavigate関数を使うと、エージェントは任意のページに直接ジャンプでき、UIを経由せずにテストに合格します。そこで、エージェントがnavigateを呼び出すのを禁止するリンタールールを作成しました。これにより、テストを既知の開始ルートに配置する許可されたフィクスチャのみが利用可能となり、エージェントが新機能に到達する唯一の方法はUIをクリックして進むことです——つまり、テストに合格するためにメニュー項目を追加せざるを得なくなります。
結果:同じ問題は二度と発生しません。なぜなら、より優れたプロンプトのためではなく、正しい動作が唯一可能な動作だからです。
重要なポイント
モデルの出力を修正するのはやめましょう。代わりに、正しい出力が最も抵抗力の少ない経路となるように環境を制約することです。すべてのミスは、次のミスを設計によって排除するチャンスです。
📖 元の記事を読む: r/ClaudeAI
👀 See Also

Claude Codeで開発者ポートフォリオを構築する:ジュニアデベロッパーのワークフローと学び
MERNスタックの21歳のジュニア開発者が、Claude Codeを使ってnidhil.liveを構築した方法を共有。具体的なプロンプトの重要性と、生成されたコードを盲目的にコピペするのではなく理解することの重要性を強調しています。

Claudeのコードコンテキストウィンドウのコストとパフォーマンス管理
開発者が、すべてのAPI呼び出しが完全な会話履歴を送信するため、蓄積された履歴がコストの大部分を占めることを説明し、コスト削減と応答品質向上のために、ハンドオフメモを付けて新規セッションを開始するワークフローを共有しています。

節約最大化:予算内でOpenClawボットを運用する方法
OpenClaw/ClawdBot/MoltBotを無料または低予算で実行する方法を探り、r/openclawで共有されているコミュニティのヒントと工夫に富んだ戦略を活用しましょう。

GitHub Copilot Pro+から直接Anthropic APIへの切り替え:コスト分析
ある開発者がコスト比較を行い、ソロ開発者にとってはGitHub Copilot Pro+よりもAnthropicの直接APIの方が安くなる可能性があり、Sonnet 4.6でOpusの使用事例の80%をカバーできることが示された。