GitHubのAIコーディングアシスタント「GitHub Copilot」が大幅にアップデートされ、開発者の生産性をさらに向上させる新機能が多数登場した。特に注目すべきは、自律的にタスクを実行する「エージェントモード」、複数ファイル編集を支援する「Copilot Edits」、そしてソフトウェアエンジニアリング(SWE)エージェント「Project Padawan」だ。これらの新機能は、開発者がより創造的な作業に集中できるよう、AIによる支援を強化するものだ。
エージェントモードで自己進化するAIへ
GitHub Copilotに新たに搭載されたエージェントモードは、AIが自律的にコードを反復し、エラーを認識して自動修正する能力を備えている。具体的には、以下の機能を提供する:
- ターミナルコマンドの提案と実行
- ランタイムエラーの分析と自動修復
- ユーザーの指示に基づき、必要な追加タスクを推測・実行
- 自身のエラーを検出し、修正
これにより、開発者はエラーのデバッグや修正に費やす時間を大幅に削減できる。例えば、GitHub Copilotはマラソントレーニングを追跡するWebアプリを構築する際、指示されたタスクだけでなく、必要な追加タスクも自動的に実行出来、完成まで導いてくれる。さらに、実行時エラーを自己修復する機能も備えており、ターミナルからのエラーメッセージをコピー&ペーストする手間を削減するとのことだ。
GitHub CEOのThomas Dohmke氏はTechCrunchに対し、「Copilotは(中略)ユーザーが元々リクエストした意図をより深く理解するために、より多くの作業を行うようになり、それを解決しようとします」と述べている。
エージェントモードを利用するには、VS Code Insidersをダウンロードし、GitHub Copilot Chatの設定でエージェントモードを有効にする必要がある。その後、Copilot Editsパネルで、モデルピッカーの横にある「Edit」から「Agent」に切り替えることで利用可能だ。GitHubは、エージェントモードをCopilotがサポートするすべてのIDEに展開する予定としている。

Copilot Editsが正式版としてVS Codeに登場
2024年10月のGitHub Universeで発表されたCopilot Editsが、VS Codeの正式版としてリリースされた。「Copilot Edits」は、自然言語による指示で複数ファイルにわたる編集を可能にする。開発者は、編集対象のファイルを指定し、自然言語で変更内容を指示するだけで良い。Copilot Editsは、以下の機能を提供する:
- 複数ファイルへのインライン変更
- 提案された変更のレビューと承認
- デュアルモデルアーキテクチャによる効率と精度の向上
- 基礎言語モデルの選択(GPT-4o、o1、o3-mini、Claude 3.5 Sonnet、Gemini 2.0 Flashなど)
- 変更の適用に最適化された推測デコードエンドポイント
Copilot Editsの背後では、デュアルモデルアーキテクチャが活用されている。まず、基盤となる言語モデルがEditsセッション全体のコンテキストを考慮して、最初の編集候補を生成する。ユーザーは、OpenAIのGPT-4o、o1、o3-mini、AnthropicのClaude 3.5 Sonnet、そして新たにGoogleのGemini 2.0 Flashの中から基盤モデルを選択することが可能だ。次に、提案された編集内容は、ファイルへの変更を高速に適用するために最適化された推測デコードエンドポイントに送られ、エディタにインラインで変更が提示される。
Copilot Editsは、VS Codeのセカンダリサイドバーに配置され、プライマリサイドバーのビュー(エクスプローラー、デバッグ、ソース管理など)と連携しながら、提案された変更をレビューできる。また、音声による指示も可能で、より自然な対話形式でCopilotと連携できる。

Copilot Editsは、VS Codeで一般提供が開始され、Visual Studio 2022でもプレビュー版が利用可能になった。GitHubは、今後もCopilot Editsの機能改善を続け、推測デコードエンドポイントのパフォーマンス向上、Copilot Chatからのコンテキスト維持、作業セットへのファイル提案、提案されたチャンクの取り消し機能などを予定している。
Vision for Copilotで画像からコード生成
GitHub Copilotの新機能「Vision for Copilot」は、ユーザーがスクリーンショット、写真、または図をチャットに添付することで、Copilotがインターフェース、コード、および代替テキストを生成し、アイデアを具現化する機能だ。
例えば、マーケティングチームの担当者がWebページのスクリーンショットをアップロードし、変更を指示する代わりに、画像に基づいてCopilotに直接変更を実装させることができる。
この機能は以前からVS Codeの拡張機能として提供されていたが、GitHub Copilot Chatのネイティブ機能として統合される形で進化した。以前はAPIキーが必要だったが、今回のアップデートでその必要もなくなっている。
SWEエージェント「Project Padawan」:GitHub Copilotがリポジトリのコントリビューターに
GitHubは、Project Padawanというコードネームで呼ばれる野心的なプロジェクトを発表した。これは、開発者から課題を割り当てられたCopilotが、タスク全体を自律的に処理できるソフトウェアエンジニア(SWE)エージェントだ。具体的には、以下の機能を提供する:
- 人間のレビュアーの割り当てとフィードバックへの対応
- GitHubのIssueをCopilotに直接割り当て
- Copilotによるプルリクエストの自動生成とテスト
Project Padawanは、課題をCopilotに直接割り当てることを可能にし、完全にテストされたプルリクエストを生成します。タスクが完了すると、Copilotは人間のレビュアーをPRに割り当て、フィードバックに対応します。Dohmke氏は、Project Padawanについて具体的な時期を示唆しませんでしたが、パートナーやコミュニティと協力して改善を進めていくとしています。
Copilotは、割り当てられたタスクごとに安全なクラウドサンドボックスを自動的に起動し、リポジトリのクローン作成、環境設定、コードベースの分析、必要なファイルの編集、コードのビルド、テスト、およびリントを非同期的に実行する。また、IssueやPR内の議論、リポジトリ内のカスタム指示を考慮し、タスクの意図やプロジェクトのガイドラインを理解する。
GitHubは、Project Padawanを「AIネイティブなワークフロー」と位置づけ、パートナーや顧客との連携を通じて機能改善を進める予定だ。Project Padawanの目標は、バグ修正や自動テストの作成・維持といった、重要だが手間のかかるタスクを自動化し、開発者がより重要な作業に集中できるようにすることだ。
XenoSpectrum’s Take
GitHub Copilotの最新アップデートは、AIがソフトウェア開発の現場でより深く、より自律的に関与していく未来を示唆している。エージェントモード、Copilot Edits、Vision for Copilot、そしてProject Padawanといった新機能群は、開発者の生産性を飛躍的に向上させる可能性を秘めたものだ。
特に注目すべきは、エージェントモードとProject Padawanが示すCopilotの自律性の進化だろう。これにより、Copilotは単なるコード補完ツールから、開発タスクを自律的に遂行する真の「AIペアプログラマー」へと変貌を遂げようとしている。Project Padawanが実用化されれば、バグ修正やテスト自動化といった、これまで多くの時間を費やしてきた定型的なタスクから開発者を解放し、より創造的で価値の高い業務に集中できるようになることだろう。
Vision for Copilotは、AIの適用範囲をコード生成に留まらず、デザインやマーケティングといった隣接領域にまで拡大する可能性を示唆している。画像からコードを生成する能力は、Web開発のワークフローを大きく変革するかもしれない。
Sources
コメント