

Atsushi Nakatsugawa
August 06, 2025
1 min read
August 06, 2025
1 min read

Cut code review time & bugs by 50%
Most installed AI app on GitHub and GitLab
Free 14-day trial
10 Advanced Github Copilot tips & tricks | Copilot best practicesの意訳です。
GitHub Copilotは、現代の開発者にとって欠かせないツールのひとつになりつつあります。OpenAIのモデルによって駆動され、エディタ上でリアルタイムにコード提案を行ってくれるこのツールは、使いこなせば生産性を大きく向上させる可能性があります。Microsoftの調査によれば、開発速度が最大で55%向上するとも言われています。

ただし、Copilotは魔法の杖ではありません。放っておけば、頼りになる相棒というよりは、やる気のあるジュニアエンジニアが推測でコードを書くような挙動になることも。Copilotをうまく使いこなすかどうかは、ワークフローの設計と使い方次第です。
本記事では、CopilotがAI開発ツール群の中でどのように機能するのかを概観し、私たちCodeRabbitや多数の開発者コミュニティで得られた知見から、Copilotの効果的な使い方を10個のヒントとして紹介します。
Copilotには得意なタスクがあります。そこに集中させることで、時間を大幅に短縮できます。
特に得意なのは以下のような作業です:
繰り返しが多いコード
単体テストの生成
構文エラーの修正
コードの説明
正規表現の生成
たとえば、ある関数に対して複数のユニットテストを書く必要がある場合、Copilotはコメントを元にそれらを一気に生成してくれます。
逆に、CopilotはUI設計やデータベーススキーマの構築など、コード以外の作業には不向きです。Copilotを「手の早いジュニア」として位置づけ、自分が設計と判断を担いましょう。
Copilotはエディタに表示されている情報をもとに提案を行います。そのため、関連ファイル(たとえば utils.py と models.py)を同時に開いておくと、より適切な補完が得られます。
また、使用予定のライブラリやフレームワークをあらかじめ import しておくことで、Copilotが適切な構文でコードを生成しやすくなります。たとえば import pandas as pd と書いておけば、DataFrame処理にはpandasを使うという前提で提案されます。
不要なファイルやコードが開いているとノイズになるため、作業に関係のないものは閉じておきましょう。
Copilotにとって、コメントはプロンプトと同じ役割を持ちます。英語でも日本語でも良いので、やりたい処理を具体的に書いてみましょう。
例:
# 名前のリストを大文字小文字を区別せずにソートする
このように書くと、Copilotは sorted(names, key=str.lower) のような実装を自動で提案してくれます。
特に、入力と出力の具体例をコメントに含めると、より意図が伝わりやすくなります。あいまいなコメントではあいまいなコードが返ってくるので注意しましょう。
変数名や関数名は、Copilotにとっても重要なコンテキストのひとつです。たとえば check() や data1 のような名前では意図が伝わりづらく、提案されるコードも曖昧になります。
代わりに is_user_promotable() や calculate_invoice_total() のように、機能や目的が明確にわかる名前を使いましょう。
これは人間にとっての可読性だけでなく、Copilotの提案精度にも影響を与える重要な要素です。
Copilotはコードを書く段階で活躍しますが、書いたコードをレビューする段階ではCodeRabbitの出番です。CodeRabbitは、VS CodeやGitHubのPR上でAIによるコードレビューコメントを自動で追加してくれます。
Copilotでコードを素早く書き、CodeRabbitでレビューすることで、開発スピードと品質を両立できます。Copilotが気づかないエッジケースやチームのコーディング規約違反なども、CodeRabbitが検知してくれます。
CodeRabbitはこちらから14日間の無料トライアルが利用できます。
Copilotに期待通りの動作をしてもらうには、明確かつ具体的なコメントが必要です。
たとえばログの1行をパースしたい場合、単に # parse log line と書くよりも、以下のように書く方が望ましい結果になります。
# "2025-06-02 09:00:00 - ERROR - failed to connect"
# のようなログをパースして、datetime, level, message に分割
このように例を添えることで、Copilotがフォーマットや処理の意図を正確に理解しやすくなります。
Copilotはシンプルで明確なタスクに強みを発揮します。逆に、複雑すぎる処理を一度に任せると混乱したコードが返ってくることもあります。
そのため、アルゴリズムの実装やCLIツールの構築などでは、まずステップをコメントで書き出し、1つずつCopilotに埋めてもらう方法が効果的です。
こうすることで、コードの確認もしやすく、品質の担保にもつながります。
Copilotにはインライン補完とCopilot Chatという2つの使い方があります。
単純なアルゴリズムやループの補完
コメントからそのままコード生成
繰り返しパターンの埋め込み
コードの意味やエラーの解説
長めのコード生成と改良
セキュリティ意識など、ペルソナ指定のやり取り
両者をうまく使い分けることで、より柔軟な開発が可能になります。
Copilotは1つの提案だけでなく、複数の候補を持っています。最初の提案が理想的でない場合は、ショートカットキーやCopilotパネルを使って他の候補を確認しましょう。
それでも良い提案が出ない場合は、コメントやコードを見直して再度試してみると改善されることがあります。
Copilotが生成するコードは一見正しそうでも、バグやセキュリティの問題を含んでいる可能性があります。コードを本番環境に取り込む前に、必ずレビューとテストを行ってください。
空入力や例外処理への対応
SQLインジェクションの可能性
非推奨APIの使用
などを確認することが重要です。
静的解析ツールやLinter、セキュリティスキャナー(SnykやCodeQLなど)も積極的に活用しましょう。
Copilotは非常に強力なツールですが、使い方によってその効果は大きく変わります。この記事で紹介した10のベストプラクティスを実践することで、Copilotをただの補完ツールから、本格的な開発支援ツールへと進化させることができます。
定型処理はCopilotに任せて、自分は設計や問題解決に集中する——そんな開発スタイルを実現するために、ぜひ紹介したヒントを取り入れてみてください。
そして、CodeRabbitとの組み合わせもぜひお試しを!