🧑‍✈️

【AI】私の GitHub Copilot の使い方

に公開

はじめに

私が勤務している 株式会社L&E Group では、GitHub Copilot の Enterprise プランを契約しており、メンバー全員が GitHub や VS Code で GitHub Copilot を使うことができます。

契約当初は、コード補完くらいしか機能がありませんでしたが、それからたくさんのアップデートがあり、現在ではコーディングエージェントやコードレビューなど、様々な機能が搭載されています。

私は、今まで Devin や Claude Code などの AI ツールも使ってきましたが、現在は GitHub Copilot をメインで使っています。

今回は、そんな私の GitHub Copilot の使い方をいくつかご紹介します。

注意点

GitHub Copilot とは

GitHub Copilot とは、GitHub が提供している AI コーディングアシスタントです。

コード補完やコードレビュー、コーディングエージェントなど、様々な機能が搭載されており、開発者の生産性を向上させることができます。

GitHub Copilot は、GitHub や VS Code、Neovim など、様々な開発環境で使用することができます。

https://github.com/features/copilot?locale=ja

https://docs.github.com/ja/copilot

GitHub Copilot のプラン

GitHub Copilot のプランには、「個人向け」と「ビジネス向け」があり、「個人向け」には3つのプランが、「ビジネス向け」には2つのプランがあります。

プランによって、使える機能や LLM の種類が異なります。

また、グレードが上のプランでは、プレビュー段階の機能も使用できるようになります。

コストと機能のバランスを考慮して、適切なプランを契約し、GitHub Copilot を使ってみてください。

https://github.com/features/copilot/plans?locale=ja

私の GitHub Copilot の使い方

1. コード補完

コード補完は、GitHub Copilot の最も基本的な機能で、私は契約当初からずっと使っています。

私は普段、VS Code でコードを書いています。

コードを書いていると、GitHub Copilot が自動的に続きのコードを提案してくれます。

提案されたコードは、Tab キーで受け入れ、Esc キーで拒否することができます。

メソッド名からコードを推測して提案してくれたり、コメントからコードを生成して提案してくれたりします。

https://docs.github.com/ja/copilot/get-started/features#inline-suggestions

2. Agent モード、Ask モード

VS Code では、サイドバーにチャット画面を開くことで、GitHub Copilot と対話することができます。

モードと LLM を選択することで、GitHub Copilot に質問したり、コードの説明を求めたり、コードの生成を依頼したりすることができます。

私は、主に Agent モードと Ask モードを使っています。

Agent モード

このモードは、GitHub Copilot に指示を与えることで、自律的に作業を進めてくれるモードです。

プロジェクト全体を考慮したうえで、複数のステップにわたるアクションを実行してくれます。

私は、以下のような場面で Agent モードを活用しています。

  • 新機能の実装:「〇〇機能を実装して」と指示すると、必要なファイルを作成・修正してくれる
  • バグ修正:「〇〇のバグを修正して」と指示すると、問題を特定して修正してくれる
  • リファクタリング:「〇〇部分をリファクタリングして」と指示すると、複数のファイルにまたがるリファクタリングを実行してくれる

現時点では、作成・修正したコードをそのまま提出できるレベルではありませんが、最後に自分で微修正すれば問題ないレベルのコードを生成してくれるため、開発の効率化に大きく役立っています。

このように、複数のファイルにまたがる作業が必要な場合は、Agent モードを使うようにしています。

https://docs.github.com/ja/copilot/get-started/features#agent-mode

Ask モード

このモードは、GitHub Copilot に質問を投げかけて、回答を得ることができるモードです。

ブラウザで ChatGPT や Claude に質問するのと似ています。

私は、一般的な質問をしたり、コードの説明を求めたり、簡単なコードの修正を依頼したりする場合に、Ask モードを活用しています。

どちらかというと、Agent モードよりも Ask モードの方を使うことが多いです。

https://docs.github.com/ja/copilot/get-started/features#copilot-chat

3. コーディングエージェント

この機能は、GitHub の Issue の Assignees に GitHub Copilot を割り当てることで、GitHub Copilot が自律的にコードを書いてくれ、最終的に Pull request を作成してくれる機能です。

基本的な用途は Agent モードと似ていますが、GitHub Copilot がバックグラウンドで作業を進めてくれる点が大きな特徴です。

そのため、開発者は他の作業を並行して進めながら、GitHub Copilot にコードを書かせることができます。

私は、ミーティングやお昼休憩に入る前に Issue を作成し、GitHub Copilot にコードを書かせることが多いです。

そうすることで、自分が戻ってきたときには Pull request が作成されており、自分で微修正を加えるだけで、すぐに提出できます。

この機能を活用することで、時間を有効に使えるようになりました。

https://docs.github.com/ja/copilot/get-started/features#copilot-coding-agent

4. コードレビュー

この機能は、GitHub の Pull request の Reviewers に GitHub Copilot を割り当てることで、GitHub Copilot がコードレビューを行ってくれる機能です。

私は、Pull request を提出する前に、必ずこの機能を使用しています。

セルフチェックを行った後にこの機能を使うようにしていますが、タイポや小さなバグ、パフォーマンスの問題点などを指摘してくれるため、とても助かっています。

私の作業効率が向上するのはもちろんですが、レビュアーの負担も軽減できるので、かなり便利な機能だと感じています。

https://docs.github.com/ja/copilot/get-started/features#copilot-code-review

おわりに

今回は、私の GitHub Copilot の使い方をご紹介しました。

GitHub Copilot には、たくさんの機能が搭載されており、様々な場面で開発者の生産性を向上させることができます。

他にオススメの使い方がございましたら、コメントなどで教えていただけると幸いです。

最後までご覧いただき、ありがとうございました。

GitHubで編集を提案
株式会社L&E Group

Discussion