【要約】Claude Codeのサブエージェント運用で効いたのは「賢い指示」より「失敗のカタログ化」だった [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
開発者がAIエージェントを運用する際、指示(プロンプト)を洗練させても、過去の失敗を繰り返したり仕様を見落としたりする問題に直面する。具体的には以下の課題が挙げられる。
- ・指示の抽象化による誤認: 曖昧な指示により、エージェントが誤った前提で作業を開始する。
- ・仕様の不一致: プロジェクト内の文書と外部プラットフォームの公式仕様との乖離を見逃す。
- ・コンテキストの忘却: エージェントの数が増えるにつれ、既存の資産や役割の存在を忘れてしまう。
// Approach
筆者は、役割分担されたサブエージェントの運用と、失敗事例を機械的にプロンプトへ組み込む仕組みを導入した。主な手法は以下の通りである。
- ・役割とモデルの分離:
ccteamsを利用し、設計にはOpus、実装にはSonnetを割り当てるなど、役割に応じたモデル選定を行う。 - ・失敗のカタログ化:
team-lessonsとして、失敗を「症状→誤った直感→正しい打ち手」の形式で記録し、委任時に引用する。 - ・資産の自動認識:
check-in.shをSessionStartフックに登録し、セッション開始時に利用可能な資産を自動でコンテキストへ流し込む。
// Result
この運用により、個別のプロンプトを高度化することなく、プロジェクト固有の知見をエージェントに継承させることに成功した。具体的な成果は以下の通りである。
- ・再発防止の自動化: 過去の失敗を形式的に注入することで、同じミスを繰り返さない体制を構築した。
- ・判断精度の向上: 実行結果(evidence)を重視するワークフローにより、推論(reasoned)のみに頼らない検証を実現した。
- ・運用の効率化: 役割分担とルールをファイル化することで、口頭指示の手間を削減した。
Senior Engineer Insight
> プロンプトエンジニアリングの本質を「指示の洗練」から「経験の構造化」へシフトさせている点が極めて実践的である。モデルの性能差を理解し、判断(Opus)と実行(Sonnet)でリソースを使い分ける設計は、コストと精度のバランスを取る上で理にかなっている。ただし、失敗事例を言語化・構造化するプロセスには、開発者の継続的な工数が必要となる。大規模開発においては、この「失敗ログ」の管理自体が新たな運用負荷となる可能性があるため、自動化との兼ね合いが鍵となるだろう。