Claude Codeのサブエージェントが自動で呼ばれなかったときの話
Claude Codeのサブエージェント機能を試していて、不思議な現象に気づいた。同じ定義ファイルなのに、descriptionの書き方によって、自動で呼ばれたり呼ばれなかったりするというのだ。試した2つの書き方は次の通り。呼ばれなかった場合は「コードレビューを専門に行うエージェント」、呼ばれた場合は「コードレビューを専門に行うエージェント。レビューするときは必ずこのサブエージェントが呼び出される」という具合に、後者は「絶対」のニュアンスを持たせた。なぜこの差が出るのか、Claudeに聞いてみた。返ってきた答えは、タスクが単純な場合は不要にサブエージェントを使わないというガイドラインに従っているというものだった。
これが面白い。AIが自動判断するときの「経済性」の考え方が透けて見える。ファイルが12行と非常に小さく単純だったので、サブエージェント起動のコスト(起動時間・コンテキスト消費)に見合わないと判断された、ということだ。つまり、ユーザーの「このタスク用の専門エージェントに頼みたい」という意思よりも、AIが「このレベルの仕事に特化エージェント使う必要ない」と判断したコストダウンの方が優先されたわけである。この背景には、サブエージェント機能の設計思想がある。エージェントの起動と文脈管理にはコストがかかるから、単純なタスクまでサブエージェント化すると、むしろシステム全体の効率が落ちる。だからこそ、実装側は「タスクが十分に複雑か」「専門化する価値があるか」を自動判断する仕組みを入れた。
ユーザーの意図と実装側の効率性判断のズレは、古い話ではなく今もある。では、それを埋めるには何をするか。descriptionに「〇〇のときは必ず呼び出す」のような、強い指示性を持たせることが、呼び出される確率を上げる。つまり、AIに「単純さは無視してください」という強制指示を与える形になる。Claude Codeを使う際の実務含意は、このズレを理解することだ。AIが自動でタスクを振り分けるのは便利だが、人間の意図と異なるかもしれない。その場合は指示を明確にする、特に「必ず」「絶対」といったニュアンスを入れることで、AIの判断を上書きできる。指示の強さと処理効率のバランスを理解し、どこまで明示的に指示するかを判断することが、効率的なAI活用につながるのだ。
※ 上記は配信元記事をもとにAIの鬼編集部が要約・再構成したものです。正確な内容は出典元をご確認ください。
このニュースの全文は、配信元でお読みいただけます。 Zenn AIで元記事を読む →


