powered by TechFeed
表示モード
Microsoft

VS Code 1.135がAIエージェントのコードを別のAIにレビューさせる機能を実験導入 — セカンドオピニオンは「独立した検証」になり得るか

8月31日、Tom Smithが「VS Code 1.135 Gives AI Coding Agents a Second Opinion」と題した記事を公開した。VS Code 1.135に追加された実験的機能「Rubber Duck」をはじめとする、AIコーディングエージェントの信頼性と継続性を高める新機能群について詳しく紹介している。

8月31日、Tom Smithが「VS Code 1.135 Gives AI Coding Agents a Second Opinion」と題した記事を公開した。VS Code 1.135に追加された実験的機能「Rubber Duck」をはじめとする、AIコーディングエージェントの信頼性と継続性を高める新機能群について詳しく紹介している。


AIエージェントが書いたコードを、別のAIがレビューする

AIコーディングエージェントを使い続けていると、ある共通のパターンに気づく。エージェントは自信を持ってコードを書き、テストも通る。しかし後からレビュアーが、エージェントが考慮していなかったエッジケースを指摘する。モデルが嘘をついているわけではない。ただ、自分が何を見落としているかを知らないだけだ。

VS Code 1.135は、その問題に正面から対処している。目玉機能はRubber Duckと呼ばれる実験的機能だ。名前は「ラバーダック・デバッグ」に由来する。これは、コードをゴム製のアヒル人形に向かって声に出して説明することで自分のミスに気づくという、古くからあるプログラマーの習慣だ。VS Codeのバージョンでは、そのアヒルをもう一つのAIモデルに置き換えた。

Rubber DuckはCopilotのエージェントホストセッション内で動作する。/rubber-duckとタイプすると、プライマリエージェントとは異なるモデルがそのエージェントの計画・コード・テストをレビューし、最初のモデルが見落とした可能性のある抜け穴やエッジケースを探す。Microsoftはこれを「エージェントの作業に対して、補完的なモデルからセカンドオピニオンを得る手段」と説明している。

ここで重要な留意点がある。The Futurum GroupのVPであるMitch Ashleyは次のように述べている。

「Rubber Duckは検証のプレッシャーに対して、さらなる生成で応えている。それはどこかで限界が来る。セカンドオピニオンもあくまで生成であり、独立した検証ではない。そしてAgent Host Protocolが複数ベンダーのエージェントを並走させられるほど開かれたものになるかどうかを見守る必要がある。」

— Mitch Ashley, Futurum Group

つまり、Rubber Duckが「承認」しても、それを正確さの証明として扱うのは早計だ。あくまでも「別の視点からの生成」であり、人間によるコードレビューの代替にはならない。Microsoftもそうは位置づけていない。


Agent Host Protocol:エージェントセッションを「持ち運び可能」に

Rubber Duck以外にも、VS Code 1.135はAgent Hostをリリースした。これはMicrosoftが「Agent Host Protocol(AHP)」と呼ぶアーキテクチャの上に構築されており、エージェントの処理を専用プロセスで実行する。

なお、AHPが外部ベンダーへ広く開放された仕様かどうかは現時点では確定していない。前述のAshleyの引用にある通り、「複数ベンダーのエージェントを並走させられるほど開かれたものになるかどうかを見守る必要がある」という段階にある。VS Code公式リリースノートでも、Agentセッション管理に関する詳細を確認できる。

この仕組みによって、複数のVS Codeウィンドウから同じエージェントセッションに接続できるようになった。ラップトップとサブモニターを行き来する開発者や、長時間稼働しているエージェントタスクの進捗を途中で確認したい場合に有効だ。コンテキストを失わずにセッションに復帰できる。

さらに、セッションリストはVS Code外で開始されたセッション(CopilotやClaude等、他のアプリケーションで開始したセッション)も表示するようになった。chat.agentSessions.showExternal設定でこの挙動を制御できる。


その他の改善:UIの整理とトークン使用量の可視化

Agentsウィンドウのリデザインも行われた。デフォルトがシングルペインレイアウトになり、変更・プルリクエスト・Issue・成果物などのセッション詳細がチャット入力欄の上にインタラクティブなピルとして表示される。サイドバーに埋もれていた情報が手前に出てきた形だ。これにより、長時間稼働するエージェントタスクの状態をひと目で把握しやすくなっている。

コスト管理の面では、チャット応答フッターにカーソルを合わせると、そのターンで使用されたモデル別のトークン数(入力・キャッシュ済み入力・出力)が確認できるようになった。複数モデルをCopilot経由で運用しているチームにとって、どのモデルにどれだけ使用量が集中しているかを把握しやすくなる。特にRubber Duckのようにセカンドモデルを呼び出す機能を使う場合、トークン消費の内訳が可視化されることは運用上の判断材料として重要だ。

エディタ全体の操作感という点では、ピル形式のセッション詳細表示とトークン可視化の組み合わせにより、エージェントが「何をしたか」「どれだけ使ったか」の両面をチャット画面から離れずに確認できる設計になっている。


何が変わりつつあるか

Ashleyが指摘する通り、このリリースはIDEがエージェントの「作業面」へと進化する流れの一部だ。エージェントセッションが独自プロセスで動作し、ウィンドウやアプリをまたいで持続するようになれば、エディタはエージェントの作業を指示・レビューするための場になる。

AIコーディングの第一波が「コードをより速く生成すること」だったとすれば、このリリースはその速さを支える構造を整える段階に入ったと言える。Rubber Duckによる内蔵批評者、Agentsウィンドウによる可視性向上、そしてAgent Host Protocolによるセッションのポータビリティ化、いずれもその方向性を示している。

VS Code 1.135は通常のアップデートチャンネルからすでに利用可能だ。


詳細はVS Code 1.135 Gives AI Coding Agents a Second Opinionを参照していただきたい。