コードレビューにドラフト作成、進化した新機能を見てみよう
これまで生成AIというと、いち早く登場した自動補完型のイメージがあるためか、最近登場したエージェント型となるGitHub Copilot Workspaceで「誤解のようなものがある」と服部氏。例えば「ERPの大量の設計書を投げたらすべて実装してくれるのだろうか」という感じの期待だ。それはちょっとずれていて、服部氏は「開発者がすべき1つひとつの判断において、文脈に合わせてアクションを起こすのを楽にできるか」がこれからのGitHub Copilotの特徴になるのだという。
例として、服部氏はGitHub Copilot Enterpriseの新機能となるコードレビュー機能(現在プレビュー版)について言及した。GitHub Copilotがプルリクエストに対して、差分を見て、概要を把握してレビューするエンジニアを支援する。つまりGitHub Copilotがそれぞれの場面ごとに、文脈を理解してエンジニアの作業を助けていくようになっていく。
GitHub Copilot Workspaceも同様だ。デモではGitHub Copilot Workspaceを使い、サンプルの電卓アプリに新機能を追加していくという流れを見せた。まずはGitHubイシューで書き始めるところは同じだ。これまではクローンしてブランチ切って……という流れが主流だったかもしれないが、GitHub Copilot Workspaceではたたき台を作成した上で調整していく流れになる。
ドラフトを作成してもらうものの、やはり「Copilot」の名の通り、副操縦士としてエンジニアの補佐をするところがポイントだ。都度エンジニアにインプットを求めるところが特徴的だ。
服部氏は「結局のところAI時代の人間の役割は意思決定なので、それぞれの場面で方向性を間違えていないか確認しなくてはなりません」と話す。ロジックやアルゴリズムが絡むところ、既存のコードと整合性を合わせるところなどは、エンジニアがパイロットとなり、GitHub Copilotと相互作用しながら開発していくというのが近未来の姿と言えそうだ。
今回のデモは電卓アプリにべき乗の計算をする機能を追加するというシンプルなものだった。現実的にはコードがどれだけ端正に書かれているかという問題はあるものの、最初のとっつきやすさが大きなメリットと言えそうだ。イシュー作成の画面にて、日本語で要件を書いてドラフトを作成してもらうことになるので、とっかかりの部分でエンジニアの工数を下げることができそうだ。
これからのGitHubはこれまで紹介してきたような新機能だけではなく、GitHub CodespacesのようにプラットフォームでVisual Studio Codeを起動したり、GitHub Actionsでビルドしたりするなど連携が進む。そうなるとGitHub Copilotはコードエディターを越えて、AIが介在しながら機能連携していくことで、アプリケーションの開発からデリバーまで行うような世界になっていく。