初めに
2025 年から AI の進化が激しいですね。
OpenAI をはじめ、Google / microsoft など、どんどん AI ツールを導入・リリースされております。
そんな中で、最近の VSCode の AI 機能について、簡単にメモがてらまとめてみたので、気になる方はみていただければです。
リリースノート確認
リリースノート: https://code.visualstudio.com/updates/v1_99
上記のサイト確認した際に、個人的に気になったことだけをピックアップしていく
Chat 機能
VSCode で chat 機能が使えるようになった
元々は、VSCode Insiders でアルファ版として使用できていたのだが、正式に VSCode に導入された
VSCode の settings.json にて "chat.agent.enabled": true
にすると使用できる
MCP サーバ
VSCode で MCP サーバが使用できるようになった
ワークスペースで使用する場合は .vscode/mcp.json
を作成すれば使用できる
ただ、まだ検証段階だった場合、コミットの diff に含まれ間違ってコミットする可能性もあるため、厄介な場合は User の settings.json の中身に mcp の設定を追加すればいける
Claude Desktop と連携してるっぽいので、Claude Desktop で MCP の設定が追加されている場合は、その設定が反映される
Cursor での MCP も検知するので、そこで設定されていてもおけ
これで、今まで使用していた Copilot MCP の拡張機能とはおさらばできますね
Fetch tool
公式より
一般にアクセス可能なウェブページのコンテンツをプロンプトに含める には、#fetchツールを使用する。たとえば、MCPのようなトピックに関する最新のドキュメントをプロンプトに含めたい場合、完全なドキュメント(LLMが利用するのに便利な状態になっている)をフェッチしてもらい、それをプロンプトに使用することができます。
とのことで、ヘッドレスブラウザを立ち上げてサイトを読み込むらしい
ただ、そのブラウザでは JavaScript がオフになってる(今後オンになっていく予定らしい)
なので、もし JS も実行したいようにしたいのであれば、Playwright MCP を使用しろだそうです
usages tool
公式より
usagesツールは、"すべての参照を検索"、"実装を検索"、"定義へ移動 "を組み合わせたものです。このツールは、チャットが関数、クラス、インターフェイスについて詳しく知るのに役立ちます。例えば、チャットはこのツールを使ってインターフェースの実装サンプルを探したり、リファクタリングを行う際に変更が必要な箇所をすべて見つけることができます。
とのことなので、既存の開発基準などがあればそちらに準拠した書き方でコードを生成してくれるっぽい
地味に使いそうな予感
Agent モードでのワークスペース新規作成
公式より
エージェントモードで新しいVS Codeワークスペースを雛形化できるようになりました。VS Code エクステンション、MCP サーバー、その他の開発環境のいずれをセットアップする場合でも、エージェントモードを使用することで、必要な依存関係や設定でこれらのプロジェクトを初期化、構成、起動することができます。
これは Bolt のようなことが Agent モードでも使用できる感じかなと思った
Agent mode tool approvals
Agent モードでターミナル実行も可能になるが、リスクが伴う
そのため、ターミナルコマンドの使用を承認する必要があるとのこと
今まで VSCode Insiders を使用していて、そこで Agent モードを使用していた人はもう慣れていることだとは思うが、こちらは引き続き慎重に扱っていきたい(脳死でポンポン承認しているとディレクトリ構成がぶっ壊れることも・・・)
また承認の最適化を行うため、セッション・ワークスエース・アプリケーションレベルで承認を記憶できるようになったとのこと
ただ、現在のターミナルツールでは有効になっていないので、今後のリリースでターミナル用の承認システムを開発する予定だそう
oh my zsh とかとうまく組み合わせることができるのかしら?と気になったりした
Unified Chat view
改めて、Chat 機能は下記のような UI に変更された
- Ask: これは前のチャットビューと同じです。任意のモデルを使用して、ワークスペースやコーディング全般について質問することができます。組み込みのチャット参加者やインストールされている拡張機能を呼び出すには
@
を使用します。任意のコンテキストを手動で添付するには#
を使用します - Agent: タスクを完了するために、自律的にコンテキストを収集したり、ターミナルコマンドを実行したり、その他のアクションを実行するための一連のツールを使って、エージェント的なコーディングフローを開始します。エージェントモードはすべてのVS Code Insidersユーザーで有効になっており、VS Code Stableではより多くのユーザーに提供される予定です
- Edit: 編集モードでは、モデルは複数のファイルに対して指示された編集を行うことができます。codebaseを付けると、自動的に編集するファイルを見つけることができます。しかし、ターミナルコマンドを実行したり、他のことを自動的に行うことはできません
今更知ったが、このモードの切り替えにはショートカットが用意されていた
それが 「Cmd
+ .
」 となる
Bring Your Own Key (BYOK) (Preview)
公式より
Copilot ProとCopilot Freeのユーザーは、Azure、Anthropic、Gemini、Open AI、Ollama、Open Routerなどの一般的なプロバイダーのAPIキーを持参できるようになりました。これにより、Copilotでネイティブにサポートされていない新しいモデルを、リリースされたその日から使用できるようになります。
これを試すには、モデルピッカーからモデルの管理...を選択します。Copilot BusinessおよびEnterpriseのお客様へのサポートを積極的に検討しており、今後のリリースで最新情報を共有する予定です。この機能の詳細については、ドキュメントをご覧ください。
ちょっと気になるので、暇な時に試そうかなぁ〜(多分試さないやつだが)
Reusable prompt files
Improved configuration
settings.json の設定で chat.promptFilesLocations
があるが、こちらにグロブパターンがサポートされるようになった
さらに、ファイルシステム上で大文字と小文字の区別が適用されるようになり、ホスト・オペレーティング・システムの動作と一致するようになった
Alignment with custom instructions
.github/copilot-instructions.md
ファイルが使用できるようになった
こちらは VSCode Insiders で実験的に追加された機能で今回、正式に VSCode に追加される運びとなっている
こちらの機能に関しては Chat した際の返答の材料となるものを事前に入力できるといったもの
カスタム命令についてはこちらを参照とのこと
https://code.visualstudio.com/docs/copilot/copilot-customization
User prompts
Create User Promptコマンドにより、ユーザープロンプトと呼ばれる新しいタイプのプロンプトを作成できるようになりました。これらはユーザーデータフォルダに保存され、コードスニペットやユーザー設定と同様にマシン間で同期することができます。同期の設定は同期設定の同期リソースリストでプロンプト項目を使用して行います。
ようわからんが、なんか便利そう
Improved vision support (Preview)
前回は GPT-4o で Copilot Vision が有効になっていた
チャットで画像を添付して使用する方法については、リリースノートを確認すること
このリリースでは、どのブラウザからでもドラッグ&ドロップで画像を添付できる
ブラウザからドラッグ&ドロップした画像は、.jpg
・.png
・.gif
・.webp
、または .bmp
の正しい URL 拡張子を持つ必要があります。
画像読み込ませてやり取りは地味にありがたいのでフロントエンジニアはどんどん活用できそうだと感じる
Semantic text search improvements (Experimental)
AIを活用したセマンティック・テキスト検索が「検索」ビューでデフォルトが有効になった
キーボードショートカットの ⌘I
を使用すると、通常の検索結果の上に、クエリに基づいて最も関連性の高い結果を表示するセマンティック検索をトリガーできる
設定を変更したい場合は github.copilot.chat.search.semanticTextResults
を変更する
Code Editing
Next Edit Suggestions general availability
Next Edit Suggestions(NES)の一般提供が開始された
これは早く実装の時に試したい
設定をいじるには github.copilot.nextEditSuggestions.enabled
を true
にする必要がある
どんな機能なの?に関してはリリースノートにある動画を見ればわかると思う
https://code.visualstudio.com/assets/updates/1_99/next-edit-suggestion.mp4
Notebook
こちらに関しては、いまだに Nodebook をそこまで使用したことがないので割愛
まとめ
まず前回 v1.98 が出てから、もう v1.99 が出て、すごいスピード感だなぁと思いました
Agent モードの使用が VSCode Insiders で使用でき、その後すぐ VSCode で使用できるようになったため、VSCode Insiders はまた眠らせようと思いますw
次の VSCode のリリースも楽しみにしつつ、頑張って AI のキャッチアップは行っていこうと思います
キャッチアップが遅れるとエンジニアとしても結構危機的状況にもなりかねないので、皆さんも頑張っていきましょう!