VS CodeのAI機能が完全オープンソース化へ

## はじめに

Microsoft傘下のコードエディターが、AI機能を含めて完全にオープンソース化される方向性がVS Codeチームより発表されました。

## 発表の概要

https://x.com/code/status/1924497694648603021

VS Codeチームは、コードエディターの未来はオープンでAIに支えられるべきだという信念のもと、**GitHub Copilot Chat拡張機能のコードをMITライセンスでオープンソース化**すると発表しました。さらに、この拡張機能の関連コンポーネントをVS Coreの中核部分に統合していく計画も明らかにされています。

この決定により、VS Codeは「オープンソースAIエディター」となることを目指しているようです。

## オープンソース化の背景

VS Codeチームがこのタイミングでオープンソース化に踏み切る理由として、以下の5つの要因が挙げられています。

### 1. 大規模言語モデルの進歩
大規模言語モデルが大幅に改善されたことで、これまで秘匿していた「秘伝のタレ」的なプロンプト戦略の必要性が薄れました。

### 2. AI UIパターンの標準化
AI対話における最も効果的なUXパターンが、各エディター間で共通化されてきました。これらの共通UI要素を安定したオープンソースコードベースで提供することで、コミュニティがさらなる改良を加えられるようになります。

### 3. オープンソースAIツールエコシステムの成長
VS Code拡張機能を中心としたオープンソースAIツールのエコシステムが拡大しています。拡張機能開発者がより簡単に開発、デバッグ、テストを行えるよう支援したいという意図があります。

### 4. データ収集の透明性向上
AIエディターが収集するデータについて多くの質問が寄せられている状況を受け、Copilot Chat拡張機能をオープンソース化することで、データ収集の透明性を高めます。

### 5. セキュリティ強化
悪意のある攻撃者がAI開発者ツールを標的にするケースが増加しており、VS Codeの長いオープンソース開発の歴史において、コミュニティからの課題報告やプルリクエストがセキュリティ問題の迅速な発見と修正に貢献してきた実績があります。

## 今後の展開

### 実装スケジュール
今後数週間のうちに、以下の作業が進められる予定です

- GitHub Copilot Chat拡張機能のコードオープンソース化
- AI機能の拡張機能からVS Coreへの統合リファクタリング

### 開発方針の継続
この変更により、VS Codeの核となる優先事項は変わりません

- 優秀なパフォーマンスの提供
- 強力な拡張性の維持
- 直感的で美しいユーザーインターフェース

### テストインフラの公開
AI機能の開発には特有の難しさがあります。通常のプログラムと異なり、AIは同じ入力でも毎回異なる結果を返す可能性があるため、従来のテスト手法では正しく動作するかを確認することが困難です。
この問題を解決するため、VS CodeチームがAI機能のテストに使用している**専用のテストシステムもオープンソース化**される予定です。これにより、コミュニティの開発者がAI機能の改善提案をする際も、提案した変更が正しく動作するかを事前に確認できるようになります。

## コミュニティへの期待

VS Codeチームは、オープンソースはコミュニティが共通基盤の上で協力する時に最も力を発揮するという考えのもと、AI機能への貢献を他のVS Code機能と同じレベルまで容易にすることを目標としています。

## FAQ
専用のFAQのセクションが設けられています。
https://code.visualstudio.com/docs/supporting/FAQ#_open-sourcing-ai-in-vs-code

簡単な要約
> VS Code は GitHub Copilot Chat 拡張機能を MIT ライセンスでオープンソース化し、関連コンポーネントを VS Code コアに統合すると発表しました。現在の Copilot サブスクリプションには影響なく、バックエンドサービスはクローズドソースのままです。AI 機能がコード開発の中核となったため、オープンな開発でより良い製品とエコシステムを促進することが目的です。既存の拡張機能への影響はなく、AI 機能は無効化も可能で、無効化時はデータも Microsoft に送信されません。

<details><summary>日本語訳</summary>

# VS Code での AI のオープンソース化

GitHub Copilot Chat 拡張機能を MIT ライセンスでオープンソース化し、関連コンポーネントを VS Code コアに統合することを発表しました。この発表の詳細については、ブログ投稿をご覧ください。

## 現在の GitHub Copilot サブスクリプションに影響はありますか？GitHub Copilot は無料になりますか？
この変更は現在の GitHub Copilot サブスクリプションには影響しません。GitHub Copilot を使用するには、引き続き GitHub アカウントと GitHub Copilot サブスクリプションへのアクセスの両方が必要です。

組織や企業を通じて Copilot にアクセスできない個人開発者は、GitHub Copilot 無料プラン（制限が適用される場合があります）にアクセスできます。そのプランがニーズに合わない場合は、Copilot 有料プランにサインアップするか、独自のモデルキーを持参できます。

## GitHub Copilot のバックエンドサービスもオープンソース化されますか？
GitHub Copilot サービスは影響を受けず、クローズドソースのままです。

## タイムラインはどうなっていますか？VS Code の AI エクスペリエンスへの貢献はいつから可能ですか？
これらの変更は今後数ヶ月間で実装予定です。タイムラインの詳細と更新については、計画項目をご確認ください。

私たちの目標は、AI 機能への貢献体験を VS Code の他の部分への貢献と同じくらい簡単にすることです。この一環として、貢献時にデバッグとテスト目的で Copilot バックエンドサービスを使用できるようにしたいと考えています。VS Code への貢献方法の詳細については、CONTRIBUTING.md ファイルをご確認ください。

## なぜ GitHub Copilot を VS Code コアリポジトリに統合するのですか？
GitHub Copilot が最初にリリースされてから、AI を活用したツールがコードの書き方の中核であることが明らかになりました。使用状況テレメトリーから、実際に VS Code で AI 機能を使用するユーザーが、デバッグやテストなどの他の機能よりも多いことがわかります。

AI 機能を VS Code の中核部分にすることは、オープンに作業することがユーザーにとってより良い製品につながり、多様な拡張機能のエコシステムを促進するという私たちの信念の再確認です。

## 拡張機能の作者です。どのような影響がありますか？
安定した API の後方互換性を維持しています。拡張機能への影響は予想されません。拡張機能作者からのフィードバックに基づいて、VS Code 拡張機能 API を継続的に進化・拡張しています。拡張機能を成功させるために追加の API が必要な場合は、ぜひお聞かせください – microsoft/vscode リポジトリで API リクエストをファイルしてください。

## VS Code で他の AI コーディング拡張機能（Cline、Roo Code など）をすでに使用しています。これは私にどのような影響がありますか？
VS Code でこれらの拡張機能を引き続き使用できます！コミュニティが VS Code の開発者エクスペリエンスを向上させる拡張機能を構築していることを嬉しく思います。他の AI 拡張機能のエクスペリエンスを向上させるため、拡張機能から直接言語モデルを呼び出すための Language Model API、言語モデルツールとの相互作用やビルトインまたは独自エージェントとの統合のための Tools API、ターミナルコマンドの実行と相互作用のための Shell Execution API（エージェント的エクスペリエンスに特に有用）などの API を継続的に追加しています。今後も、拡張機能作者のニーズに応えるためにさらに多くの API を追加する予定です。

## データ収集方法に何か変更はありますか？
いいえ、何も変更はありません。GitHub Copilot Chat をオープンソース化することで、データ収集方法を完全に透明化し、ソースコードでこれを確認できるようにしています。VS Code のテレメトリーと GitHub Copilot Trust Center について詳しく学んでください。

## VS Code チームは将来のリリースで AI 機能と非 AI 機能の間でどのように優先順位をつけますか？
AI を活用したツールはコードの書き方の中核であると考えています。AI 機能とコアエディターエクスペリエンスの改善の両方に投資しています。これは、AI と他の機能に取り組むチームの 50/50% の分割にも反映されています。非 AI 機能の多くは、パフォーマンス、セキュリティ、アクセシビリティ、Electron 更新など、ユーザーには必ずしも見えない場合があります。

## AI 機能を VS Code コアリポジトリに統合することで、VS Code の（起動）パフォーマンスに影響はありますか？
パフォーマンスは私たちの中核的な優先事項であり、AI 機能を統合する際も VS Code のパフォーマンスを維持することにコミットしています。さらに、VS Code で AI 機能を有効にしていない場合、パフォーマンスに影響を与える可能性のある関連するバックグラウンドプロセスは実行されません。

## VS Code で AI 機能を無効にできますか？
Command Palette で「Hide Copilot」を選択するか、VS Code タイトルバーの Copilot メニューから「Hide Copilot」を選択することで、VS Code のビルトイン AI 機能を無効にできます。

## VS Code で AI 機能を無効にした場合、データは引き続き Microsoft に送信されますか？
いいえ、VS Code で AI 機能を無効にした場合、または VS Code から Copilot サブスクリプションにログインしていない場合、データは Copilot バックエンドサービスに送信されません。VS Code のテレメトリーと GitHub Copilot Trust Center について詳しく学んでください。

## VS Code が Copilot 拡張機能で使用するモデルはオープンソース（OSS）ですか？
いいえ。GitHub Copilot で使用されるモデルは別途ライセンスされており、これは変更されません。実際、これらのモデルの多くは OpenAI、Anthropic、Google などのサードパーティのものです...
</details>

## まとめ

この発表は、プロプライエタリなAI開発ツールが主流を占める中で、オープンソースの力を信じる姿勢を示すものです。VS Codeチームは、透明性、セキュリティ、コミュニティ主導の開発という価値観を維持しながら、AI時代の開発体験を形作っていく意向を明確にしました。

今後数週間で段階的な実装が進められ、AI機能への貢献が他のVS Code機能と同様に行えるようになることで、開発者コミュニティにとって新たな可能性が開かれることになります。

コードエディタとしてはVS Codeをフォークして独自のAI機能を組み込んだCursorやWindsurfとの競合関係も気になりますね。
お互い切磋琢磨し高め合ってより精度の高いAI機能を搭載したコードエディタになっていけばいいなと思っています。

## 関連書籍

- [Visual Studio Codeパーフェクトマスター](https://amzn.to/45E2DzS)
- [生成AIで世界はこう変わる](https://amzn.to/4gkTkbc)
- [LangChainとLangGraphによるRAG・AIエージェント［実践］入門](https://amzn.to/4b8JC9C)
- [仕組みからわかる大規模言語モデル 生成AI時代のソフトウェア開発入門](https://amzn.to/41qUgWc)