テクノロジー / 生成AI

【Gemini Code Assist】VSCode + エージェントモードでリバーシを作成してみる

2025.10.10

株式会社GSI ITエンジニア募集【成長をカタチに】


以前の記事では、Gemini Code Assist を Visual Studio Code(以下 VS Code)上で利用する方法や、簡単な Webアプリケーションを作成した内容についてご紹介しました。当記事では、Google が2025年8月21日に公開した「Gemini Code Assist」のアップデートの目玉である「エージェントモード」の利用方法と、実際に利用して感じた旧来のチャットでの利用との違いについてご紹介します。

◆ Gemini Code Assist + VSCode の過去記事はこちら
【Gemini Code Assist】VS Code + React でフロントエンドアプリケーション作成
VS Code + Gemini Code Assist で Java プログラミング

Gemini Code Assist のエージェントモードとは

エージェントモードとは?

Gemini Code Assist のエージェントモードは、目標を与えると自律的にタスクを実行してくれる「優秀なアシスタント開発者」のような機能です。

例えば、ユーザー認証機能の追加や、複数のファイルを修正する必要がある複雑なタスクでも、エージェントモードはあなたの代わりにタスクを分析し、計画を立て、コードの変更案を作成し、提案してくれます。


このエージェントモードは、これまで VS Code の Insiders チャンネルでのみ公開されていましたが、2025年8月のアップデートでプレビュー版として公開され、誰でも利用できるようになりました。

エージェントモード - Gemini Code Assist ガイド

旧来のチャット利用との違い

従来のチャットでの利用とエージェントモードでの利用では、具体的に Gemini Code Assist の動作にどのような差があるのでしょうか。Gemini Code Assistにおけるエージェントモードの本質的な違いは、AIが「ツール」から「自律的な開発パートナー」へと進化している点にあります。

簡単に言ってしまえば、チャット利用の場合は1つ1つのタスクに対してAIに問い合わせる必要があったのに対し、エージェントモードでは最終的なゴール(目標)を与えてしまえば、必要なタスクを自ら考えたりタスク自体をさらに分解し、目標までのステップをAIが全てこなしてくれるということです。

以下に両者の違いを簡単にまとめました。

比較項目エージェントモード従来のチャット利用
AIの役割能動的なパートナー(エージェント)
としての役割

複雑なタスクの解決を目的とする

受動的なアシスタント/ツール
としての役割

コードに関する質問への応答、
シンプルなコマンド応答型の
インタラクション
タスク処理複雑でマルチステップ(多段階)の
タスクを自律的に計画・実行
単一の手順で完結するタスク、
コードの生成/説明
実行プロセス抽象的な目標を具体的な計画に
分解(タスク分解)し、実行、
検証、反復的な修正を行う
指示された内容に直接応答する


さらに、Visual Studio Code上で利用する場合は、ファイル操作やそのコンテキスト(プロジェクトやその目的を理解するために参照する情報やその範囲)が異なり、人による指示やコマンドの実行などが大幅に削減されます。

  比較項目    エージェントモード従来のチャット利用
ファイル操作複数ファイルにまたがる生成・修正を提案し、実行できる開いているファイルや選択したコードスニペットに限定されることが多い
コンテキストプロジェクトのコードベース全体(構造、依存関係、設計思想)を分析・理解する通常、現在開いているファイルや、プロンプトによって与えられた短い文脈に基づく


このように、従来のチャット利用とはその動作や実行可能なタスクの範囲が大きく異なっているのですが、まずはエージェントモードを利用してその違いを実際に体感してみましょう。

VS Code 上でエージェントモードを利用する

エージェントモードに切り替える

VS Code 上で Gemini Code Assist をエージェントモードを利用する方法は非常に簡単です。チャットの入力欄の直下にある「Agent」トグルボタンをクリックして有効にするだけで、エージェントモードに切り替えることができます。

従来のチャットモードに戻したいときは、同様にトグルボタンをクリックしてエージェントモードを無効にします。

実際にアプリケーションを作成してみる

それでは、実際にエージェントモードを利用して、簡単なWebアプリケーションを作成しましょう。以前の記事と同様に React を利用して、定番ボードゲーム「リバーシ」のアプリケーションを作成してみます。

また、今回はどこまで AI 任せで進められるのかを見てみたいので、コンテキストの指定などは行わずデフォルトの設定のまま進めてみます。

※AIを利用したコーディングでは、同じプロンプトを実行しても同一のコードが生成されるとは限りません。以下のプロントの実行例は、あくまで実際に利用した例の1つとしてご覧ください。

目標設定(指示出し)を行う

今回はプロジェクトのフォルダは全くが空の状態から開始しますので、アプリケーションの実装の前に環境構築から全ての工程が必要です。

まずこの状態で、作成したいアプリケーションについて最小限の情報だけ与えたときに、どのような動作となるのか見てみましょう。プロジェクトを作成するフォルダを VS Code で開き、エージェントモードの Gemini Code Assist のチャット送信欄から以下のプロンプトを送信してみます。

このフォルダに、リバーシで遊ぶことができるReactアプリケーションを作成したい。

エージェントモードによるアプリケーション作成

React 環境のインストール

当記事の執筆時点(2025年10月)では、上記のプロンプトに対して Gemini Code Assist から「npx create-react-app」コマンドを実行して、新たな React アプリケーションを作成することを提案されました。

しかし、React アプリケーションの構築において「npx create-react-app」コマンドは既に非推奨となっています。ここでは一旦「Don’t Run」ボタンをクリックして処理をキャンセルし、かわりに以前の記事と同様に Vite を利用した React アプリケーション環境を作成するよう指示してみます。


「Don’t Run」をクリック後に、以下のプロンプトを送信します。

create-react-app は既に非推奨なので、Vite を利用してほしい。

「npx create-react-app」」にかわり「npm create vite@latest」コマンドを利用して環境構築することを提案されました。「Run」をクリックしすると、実際にコマンドが実行されます。


Vite のインストールに続けて、プロジェクトの依存関係のインストールするための「npm install」コマンドも「Run」ボタンをクリックして実行します。(環境にもよりますが、数分程度の時間がかかる場合があります)


これで、React アプリケーションの環境が構築されました。従来のチャットモードでは、React アプリケーションの作成時に環境のインストール手順を提示してもらうことはできましたが、コマンドの実行は自分で行う必要がありました。

エージェントモードでは、コマンドの提示および実行を全て Gemini Code Assist が行いますので、利用者は実行コマンドの確認と承認を行うだけで、簡単に環境が作成することができます。

アプリケーションの作成

依存関係のインストールが完了して環境が準備されたら、自動的に次の工程が検討され、処理が進行します。先ほど React 環境の作成時に一旦処理をキャンセルして別のプロンプトを送信しましたが、そのプロンプトの目的を理解し、自動的に当初の目標(最初に送信したプロンプト)の達成に向けて処理を継続してくれています。

今回はファイル構造の確認、src ディレクトリの確認、不要なファイルの削除の順に作業が進みました。ファイルの削除はコマンドの実行となりますので、それぞれ「Run」ボタンをクリックして、どんどん実行していきます。不要なファイルの削除が完了したら、コンポーネントのフォルダ、ファイルの作成に移りました。

実行する処理に応じて、承認するボタン名が異なることに注意してください。フォルダの作成はコマンドなので「Run」ボタン、ファイルの作成は VS Code の機能を利用するので「Accept」ボタンとなっていますので、これらのボタンをクリックして処理を進めていきます。

ファイルの作成時や更新時は、左上のアイコンからファイルの差分や更新内容を事前に確認することができます。また、Edit をクリックすることで、差分を diff view で確認したり、更新内容を編集することもできます。編集した場合は、手動で保存するか、diff view を閉じて変更内容を Gemini Code Assist のチャット欄に引き継いで、処理を続行することもできます。


今回はプログラムの内容もすべて任せていますので、提示された内容のまま「Accept」をクリックして、どんどん進めていきます。

ゲームのロジック部分が作成されましたが、作成したプログラムに問題があることに自ら気が付き、問題の内容と修正方針が示されました。これこそエージェントモードの凄いところで、単一ファイルではなくプロジェクト全体を見て自らの処理内容をチェックしたり、必要に応じて修正も自ら行ってくれます。ただ、逆に人のチェックがおろそかになりかねないリスクもありそうです。


ひとまず、修正の内容を確認し「Accept」をクリックして進めていきます。デザインを含め一通りプログラムが作成され、起動できるようになりました。Gemini Code Assist からサーバーの起動コマンドが提示されますので、起動して実際に動かしてみます。

サーバーの起動コマンドは Gemini Code Assist からも行うことができますが、このあと修正や再起動があることを想定してコンソールから提示された「npm run dev」コマンドを実行して立ち上げました。

サーバーの起動後、WebブラウザでアプリケーションのURLにアクセスします。シンプルですがリバーシが遊べるアプリケーションになっていました。


ただ、この見た目ではリバーシが完成したとは言えないので、引き続きアプリケーションを改善していきましょう。

ちなみに、今回は特に指定はしていなかったのですが、棋譜のように手をさかのぼって確認できる機能が付いていました。今回はデフォルトのままAIに任せているとはいえ、この辺の優先順位などは AI にもまだまだ改善の余地がありそうです。

アプリケーションの改善指示

それでは、アプリケーションの改善を指示します。サーバを停止して、チャット欄から以下のプロンプトを送信しました。ここもなるべく簡単な指示で、どこまで対応できるか試してみます。

リバーシの見た目を改善したい。盤面と石(白と黒)を、一般的なリバーシのような見た目にしてほしい。

まず、Gemini Code Assist は作成したアプリケーションのファイルを全て読み込みなおし、修正すべき点を検討します。数十秒程度の待ち時間の後、改善のための計画が提示されました。

提示された手順を確認して「Accept」をクリックします。複数のファイルに渡って修正が入りますが、ここでも提示された内容のまま「Accept」をクリックして、どんどん進めていきます。

数分もかからずに、全てのファイルが修正されました。再度サーバーを起動して、ブラウザからアプリケーションにアクセスしてみましょう。

デザインが改善され、イメージ通りのリバーシの見た目になりました。手番がわかりにくいなど、まだまだ機能面について改善の余地はありますが、ここまでに行ったことが『3つのプロンプトの送信』と『「Run」「Accept」をクリックしただけ』であることを考えると、驚異的な生産性だと言えるのではないでしょうか。

アプリケーションの概要を作成する

このように、エージェントモードではプログラム構成やコーディングを Gemini Code Assist が全て行ってくれました。ひとまずアプリケーションは希望通り動くようになりましたが、今後機能の追加や、デザインの修正などの対応を行う場合、対象のアプリケーションの内容を理解しておく必要があります。

とは言え、プログラムの構成や各ファイルの概要について一から全て確認する必要はありません。アプリケーションの概要についても Gemini Code Assist で出力することで、アプリケーションの理解に役立てることができます。

今回は以下のプロンプトを送信し、作成したアプリケーションの概要をまとめてもらいました。

作成したアプリケーションの概要や各ファイルの説明、コード全体で重要視されている観点など、このアプリケーションの保守に活用するための説明を、マークダウン形式のファイルで作成してください。


プロジェクト内にアプリケーションの概要をマークダウン形式でまとめた「REVERSI_APP_MAINTENANCE.md」ファイルが作成されました。


今回は概要についても、ファイル形式以外すべて Gemini Code Assist に任せて出力しましたが、出力する内容の詳細や出力先、ファイル名などをプロンプトで指定することももちろん可能です。また、今後アプリケーションを改修した場合も、 同じように Gemini Code Assist を利用して概要を更新することが可能です。

エージェントモードの利用に際して考えるべきこと

今回は簡単なアプリケーションの作成でしたが、エージェントモードの強力な自律性には、もっと大きなアプリケーションやシステム開発において、人による実装の検討や指示といった工程を大幅に削減してくれることが期待できます。

ただし、AIはあくまで目的を達成するためのツールであり、利用にあたっては以下の点を忘れないようにする必要があります。

人間による監視(Human in the Loop)と最終責任

AIによる開発プロセスの進行は、開発者のコーディングなどの労力を大幅に削減してくれますが、必ずしもその結果が目的に沿ったものであるとは限りません。その利用は利用者の責任の上で行われなければならず、以下のような点に注意が必要です。

計画と承認が必須
AIは独断でコードを修正せず、実行しようとする計画と変更内容を開発者に提示し、レビューと承認(Accept/Reject)を求めます。開発者はこのプロセスに介入し、AIの判断を鵜呑みにせず、その内容を理解した上で、プロセスの進行を主導する必要があります。

目標と目的の不整合リスク
エージェントの自律性が高まるにつれて、設定された目標と目的が不整合を起こすリスクがあります。これは、作成されたプログラムが技術的な目標を達成していても、それを用いる本来の目的を逸脱(例:コスト削減を追求しすぎて顧客体験を損なうなど)し、結果として期待した効果を得られない事態を招きます。

過度な信頼のリスク
AIは倫理的判断を完全に行うことはできないため、AIが生成したコンテンツや提案は、必ず人間による最終的な確認と調整が必要です。作成されたプログラムによって予期せぬ個人情報の取り扱いや機密情報の公開、他者の権利の侵害などが行われることがないよう、しっかりと制作物を把握する必要があります。

自律的な実行に伴うリスクと制御

今回の記事では全ての変更に対して「Run」「Accept」といったボタンで人が実行を承認する形で進めましたが、VSCode では Gemini Code Assist による変更を自動で承認する設定(自動承認モード)を利用することも可能です。

ただし、このようにAIによる変更を無条件で受け入れたり、外部リソースへの広範なアクセスを許可する場合、AIの自律的な実行が予期せぬ結果につながるリスクが生じます。このため、以下の点について注意し、慎重な利用が求められます。

自動承認モード(Yoloモード)のリスク
VSCode での利用時は、変更を自動的に承認するモード(自動承認モード/Yoloモード)を設定できますが、エージェントはマシンのファイルシステムやターミナルにアクセスできるため、システム全体に影響を及ぼす予期せぬ変更につながるリスクがあります。自動承認モードで利用するタイミングと場所には十分な注意が必要です。

IDE外部の変更に対するロールバックの制限
エージェントモードでは、IDEの外部でリソースに加えられた変更を元に戻すオプションがないため、使用する場所には注意が必要です。特にクラウドサービスやAPIを利用した処理の呼出などでは、データや設定に不可逆な変更が加えられる可能性があることに十分な注意を払う必要があります。

MCP(Managed Code Playground)サーバーの信頼性
MCPサーバーは、使用可能な権限で任意のコードを実行できるため、使用するサーバーのソースが信頼できることを必ず確認する必要があります。

コンテキスト設定やプロンプトの重要性

従来のチャット利用では1つのジョブに対してプロンプトを実行していたのに対し、エージェントモードでの利用では1つのプロンプト(目標設定)に対して、AIが多くのジョブや作業工程を連続して実行するようになります。

このため、AIが実行する一連の作業に対して設計上の原則や制約(ルール・規約など)を指定することで、生成物に一貫性を持たせ、品質の大幅な向上を図ることができます。

コンテキストの必要性
エージェントの能力を最大限に引き出すためには、プロジェクトの大原則となるコーディング規約や技術スタック、アーキテクチャといった前提条件を、ジョブの開始時などにAIに伝達しておくことが不可欠です。この、AIに対して「プロジェクトの基本となる情報」を伝達する行為をコンテキスト設定と呼びます。これを適切に行うことで、AIはプロジェクトの前提条件を理解し、毎回プロンプトで基本事項を繰り返す手間を削減できます。

今回のように試作する場合はともかく、実際のプロジェクトで利用する場合には、可能な限り詳細なコンテキストを準備することが品質を上げることにつながるでしょう。

プロンプトエンジニアリングの重要性
エージェントの自律性を高めるためにも、目標や期待する出力形式を明確に指定するためプロンプトエンジニアリングのスキルが重要になります。また、個別のプロンプトで正確な目標設定を行う以外にも、例えば段階的にプロンプトを送信して開発を進める場合、あるプロンプトで設定した目標が、その後のプロンプトで意図せず変更されてしまうことがないよう留意する必要があります。

その他の注意事項

無料枠の上限

個人向けの Gemini Code Assist には無料枠が提供されていますが、無料枠には Gemini CLI 経由の利用において、1日合計1,000回まで、かつ1分当たり最大60回までという上限が存在します(※2025年9月末現在)。

VSCodeでエージェントモードを利用する際は、1つのプロンプトに対し複数回 CLI の利用が発生します。特に複雑な工程や作業範囲が大きい目標を与えた場合、この制限にすぐに達してしまい、作業が途中で中断される可能性があることに注意が必要です。

おわりに

今回は Gemini Code Assist のエージェントモードと、VSCodeで実際にアプリケーションを作成した所感をご紹介しました。実際に利用してみると、従来の利用方法に比べ圧倒的に簡単にアプリケーションが作成でき、今後の進化も考えると、こういったエージェントを利用した開発が一般的になる日はもうすぐそこまで来ていると実感させられました。

しかしながら、いかに簡単にアプリケーションやシステムが作成できるようになったとしても、AI を利用するのはあくまで人間であり、AI による制作物に対して最終的に責任を持つのも人間です。

今後AIを利用した開発においては、開発者にはAIエージェントの良きリーダー、良きレビュアーであることが求められてくると想定されます。そのためにも、プログラムやソフトウェア、システム環境や業務目的への知識と理解がますます重要になってくるのではないでしょうか。

株式会社GSI 採用サイト

新しいこと、始めよう

あなたとともに歩を進めるWEBメディア