【新常識】GitHub CopilotのAIコードレビューを使いこなす


こんにちは!クラウドソリューション開発部の西谷です。GitHub Copilotのコードレビューを使ってみました。使うための設定や、感想をシェアします!

はじめに

皆さん、日々の開発で生成AIを活用していますか?
エコモット開発部ではGitHub Copilotが日々のコーディングを強力にサポートしてくれています。
そして今回、GitHub Copilotがプルリクエストのコードレビューまでしてくれるようになったんです!驚きですよね。この記事では、この便利な機能の設定方法から、実際に使ってみた所感まで、具体的なコード例を交えながらご紹介します。

実際試してみた

まずは実際に検証した内容を共有します。
mainブランチからtestブランチを作成し、いかにも修正点がありそうな以下のソースでプルリクを作成します。 ここで、以下のようなツッコミポイントを用意します。
  • 定数名がNot_Camelという何ケースかよくわからない命名になっている
  • TypeScriptなのにany型を使っている
この修正内容でプルリクを作成します。レビューしてくれるんでしょうか…
すると画面右側のReviewersにCopilotが確認できます。 そして、プルリク作成から少し待つと…
おぉ!レビューしてくれてますね!
ご覧の通り、Copilotが自動でコードの改善点を指摘してくれています。
今回は、以下のようなレビューコメントが届きました。 こんな感じで自動でコードレビューしてくれます。非常に便利ですね。

設定方法

Copilotのレビュー機能を使うための設定と、レビューのプロンプトを設定する方法を共有します。

GitHub Copilot Reviewの有効化

これは組織の管理者が設定で変更する必要があります。 Copilot in GitHub.com > Opt in to preview features を有効化することで利用できるようなので、もしあなたが管理者出ない場合は、管理者に依頼しましょう。

プロンプト設定

どうやらプランによっては細かくプロンプトを設定できるようなのですが、ここではpull_request_template.mdを使う方法を説明します。 対象のリポジトリの.github/直下にpull_request_template.mdを配置すると、プルリクエストを作成したときにその内容が表示されます。
参考:https://docs.github.com/ja/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository
実際はこんな内容のマークダウンファイルになっています。 この設定をしてあげることで、レビュー時にCopilotがこの内容に従ってレビューをしてくれます。非常に簡単で便利ですね。

所感

非常に便利な機能で、実際のプロジェクトでもガンガン使っています。
人の目だとどうしても見落としてしまいがちなミスも、Copilotであれば結構拾ってくれます。
ただし、あくまでレビューまでであり、実際の修正は人が行う必要があります。
指摘と修正でズレがあっては本末転倒ですし、AIにすべて操られたかのようによくわからない実装をしてしまえばあとからそのコードの背景がわからず困ります。
Copilotレビューにすべてを任せるのではなく、あくまでCopilotのレビューはセーフティーネットのような感覚で利用するのが、一番安全にそして効率的に利用できると思いました。

最後に

エコモットでは一緒にモノづくりをしていく仲間を募集中です。弊社に少しでも興味がある方、AWSを使った開発に興味がある方はぜひ下記の採用ページをご覧ください!