はじめに

これまでコードレビュー支援として利用していた Amazon CodeGuru Reviewer が廃止されることになりました[1]。
そこで代替として GitHub Copilot Code Review を試してみました[2]。

Copilot Code ReviewはPull Requestに対して自動でレビューコメントを提案してくれる機能ですが、利用には有料プランへの加入が必要です[3]。

本記事では、CodeGuru廃止後の選択肢として、Copilot Code Reviewを実際に使ってみた内容を簡単にまとめます。

今回扱う内容

本記事では、GitHub Copilot の Code Review 機能について、以下の内容を扱います。

  • 基本的なセットアップ手順
  • copilot-instructions.md を活用したコードレビューの実行方法[4]

作業内容

①plan契約

まずは、GitHub の画面に移動して、以下のように進める

1️⃣ 「自身のアカウントのアイコン」をクリックする

2️⃣ 「Copilot settings」をクリックする

3️⃣ 「Upgrade」をクリックする

「Upgrade now」をクリックする

1️⃣ 利用したいプランをクリックする(個人の場合最低10ドル)

2️⃣ 「Activate now」をクリックする

②セットアップ

「menu」をクリックする

1️⃣ 「Repositories」をクリックする

2️⃣ 「New repository」をクリックする

1️⃣ 「Repository name」を入力する(Ownerが組織の場合、別途プラン契約をする必要があるので注意)

2️⃣ 「Create repository」をクリックする

1️⃣ 「自身のアカウントのアイコン」をクリックする

2️⃣ 「Copilot settings」をクリックする

3️⃣ 「Copilot in your IDE」をクリックする

「Open in Visual Studio Code」をクリックする

「Open」をクリックする

「Continue」をクリックする

「Sign in to use Al Features」をクリックする

「Continue with GitHub」をクリックする

③Copilot code reviewの検証

PRを作成するために事前にmainブランチを用意する

CHATに以下のように依頼をする(ディレクトリ構成が適切に作成されているかどうかはここでは議論しない)

Terraformを用いてAWS上にEC2を作成したいです。
Terraform推奨のディレクトリ構成に従って、適切な場所に適切なファイルを作成してください。

1️⃣ Terraformを利用するためのファイルが作成された

2️⃣ PRを作成するのでブランチを切り替える

CHATに以下のように依頼をする

copilot-instructions.mdにCopilot code reviewを実施する際の観点をまとめたいです。
Terraformのコードをレビューする時にはmoduleの構成や変数の管理、リソースの定義などに注目してください。
また、Terraformのベストプラクティスに従っているかも確認してください。
さらに、コードの可読性や保守性も重要なポイントです。
Terraformのコードレビューでは、以下の観点を考慮してください:
1. モジュールの構成:コードが適切にモジュール化されているか、再利用性が高いかを確認してください。
2. 変数の管理:変数が適切に定義され、必要な値が提供されているかを確認してください。
3. リソースの定義:リソースが正確に定義され、必要な属性が設定されているかを確認してください。
4. ベストプラクティスの遵守:Terraformのベストプラクティスに従っているかを確認してください。例えば、リソースの命名規則やコードの構造などです。
5. コードの可読性と保守性:コードが読みやすく、将来的な変更に対応しやすいかを確認してください。例えば、コメントの有無やコードの整理などです。
これらの観点を考慮して、Terraformのコードレビューを行うことで、品質の高いコードを維持し、プロジェクトの成功に貢献することができます。
また、trivyなどのセキュリティツールを使用して、コードに潜むセキュリティリスクを検出することも重要です。
Terraformのコードレビューでは、セキュリティリスクを検出するためにtrivyなどのツールを活用してください。これにより、コードに潜むセキュリティ上の問題を早期に発見し、対処することができます。セキュリティリスクの例としては、機密情報の漏洩や不適切なアクセス権限の設定などがあります。コードレビューの際には、これらのリスクを考慮し、必要に応じて修正を提案してください。セキュリティリスクの検出と対処は、プロジェクトの安全性を確保するために非常に重要です。

「copilot-instructions.md」が作成されていることが確認できる

PR作成時にReviewersに「Copilot」を設定する

Copilot からのレビューにより、以下の内容が分かる

1️⃣ 今回のケースでは、Copilot のレビューが完了するまでに約5分かかった

2️⃣ PR全体の概要が分かる

3️⃣ 「copilot-instructions.md」に基づいて修正すべき箇所の指摘がある

まとめ

今回は、Amazon CodeGuru Reviewer の廃止を受けて、GitHub Copilot Code Review を試してみました。

有料プランへの加入は必要ですが、PR に Copilot を Reviewer として設定するだけで自動レビューが実行されます。また、copilot-instructions.md を活用することで、レビュー観点を明確に反映できる点も確認できました。

CodeGuru の代替としての選択肢の一つとして、十分検討に値する機能だと感じました。

参考記事

[1]https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/codeguru-reviewer-availability-change.html
[2]https://github.blog/changelog/2025-04-04-copilot-code-review-now-generally-available
[3]https://github.com/features/copilot/plans?locale=ja
[4]https://docs.github.com/ja/copilot/how-tos/configure-custom-instructions/add-repository-instructions