VS CodeでGitHub Copilotを使う基本操作
- EN
- JA
Table of Contents
GitHub CopilotをVisual Studio Code(VS Code)で使うと、コードの入力、調査、修正をAIに相談できます。
この記事では、VS CodeにGitHub Copilotを導入し、コード補完やチャットなどの基本操作を試す手順を解説します。生成されたコードは必ず内容を確認し、必要に応じてテストやレビューを行ってください。
#
前提条件
次のものを準備します。
- VS Code
- GitHubアカウント
- GitHub Copilotを利用できるプランまたは無料枠
VS Codeは、できるだけ新しいバージョンを使用してください。GitHub Copilotのプランや利用上限は変更される場合があるため、最新情報はGitHub Copilotの料金ページで確認します。
#
GitHub Copilot拡張機能をインストールする
- VS Codeを起動します。
- 左側のアクティビティバーで、拡張機能アイコンを選択します。
- 検索欄に
GitHub Copilotと入力します。 - GitHubが公開しているGitHub Copilot関連の拡張機能を選択します。
- インストールを選択します。
バージョンによっては、GitHub Copilot Chatが同じ拡張機能に含まれている場合があります。検索結果に表示される公開元と説明を確認してからインストールしてください。
#
GitHubアカウントでサインインする
拡張機能をインストールすると、GitHubアカウントへのサインインを求められることがあります。
- VS CodeのステータスバーまたはアカウントメニューからGitHubへのサインインを選択します。
- ブラウザーが開いたら、GitHubアカウントでサインインします。
- VS Codeによる認証を許可します。
- VS Codeに戻り、アカウントメニューでサインイン済みであることを確認します。
サインインできない場合は、VS Codeを再起動してからアカウントメニューを確認します。組織のアカウントを使用している場合は、管理者による利用制限が設定されていないか確認してください。
#
コード補完を使う
コード補完は、入力中のコードやコメントをもとに続きを提案する機能です。例として、Pythonファイルに次のコメントを入力します。
# 1から指定された数までの合計を返す関数
コメントの次の行で関数名を入力すると、関数の実装候補が表示されます。薄い文字で表示された候補を採用するには、通常はTabキーを押します。候補を採用せず入力を続ける場合はEscキーを押します。
候補の内容が目的と合わないときは、コメントを具体的に書き直します。例えば、引数名、戻り値、例外処理の必要性などを明記すると、意図を伝えやすくなります。
#
複数の候補を確認する
候補が表示された状態で、別の候補を確認できる場合があります。候補を切り替えるキーボード操作は、VS Codeや拡張機能のバージョン、キーボード配列によって異なることがあります。
候補一覧を表示するには、エディター上で右クリックしてGitHub Copilotの候補に関するメニューを確認するか、コマンドパレット(Ctrl+Shift+P)でCopilotを検索します。採用する前に、候補の処理内容、エラー処理、外部入力の扱いを確認してください。
#
Copilot Chatで質問する
Copilot Chatでは、コードやエラーについて自然な文章で質問できます。
- アクティビティバーでChatを開きます。
- 入力欄に質問を入力します。
- 必要に応じて、対象のファイルやコードをコンテキストとして指定します。
- 送信して回答を確認します。
例えば、次のように具体的な質問を入力します。
この関数の処理を説明してください。入力値が空の場合に問題がないかも確認してください。
回答をそのまま正解とみなさず、説明と実際のコードが一致しているか確認します。プロジェクトの目的、使用しているライブラリ、エラーメッセージなどを必要な範囲で伝えると、質問しやすくなります。
#
Ask、Plan、Agentモードを使い分ける
Copilot Chatの入力欄では、目的に応じてモードを選択できます。利用できるモードや表示名は、VS CodeとCopilotのバージョンによって異なる場合があります。
##
Askモード
Askモードは、コードについて質問したり、処理の説明やエラーの原因を調べたりするためのモードです。通常はファイルを変更せず、回答やコード例を確認したいときに使います。
例えば、次のような質問を入力します。
このプロジェクトで認証処理を行っているファイルを探し、処理の流れを説明してください。
##
Planモード
Planモードは、実装を始める前に、調査内容や変更手順を計画するためのモードです。複数のファイルにまたがる作業では、いきなり変更を依頼するのではなく、まずPlanモードで対象ファイル、手順、確認方法を整理するとレビューしやすくなります。
計画を確認したあと、必要な修正点を追加で指示してから実装を依頼します。計画が作成されたことだけで、コードが正しく変更されたとは判断しないでください。
##
Agentモード
Agentモードは、目的を伝えると、必要なファイルの調査、コードの編集、テストやコマンドの実行などを段階的に進めるモードです。例えば、次のような作業を依頼できます。
ユーザー登録フォームに入力値の検証を追加し、関連するテストも作成してください。
Agentモードではファイル変更やコマンド実行が行われることがあります。実行前の確認を求められた場合は内容を確認し、完了後は差分、テスト結果、実行されたコマンドをレビューします。小さな調査はAsk、計画が必要な作業はPlan、明確な実装作業はAgentというように使い分けると分かりやすくなります。
#
モデルを選択する
Chatのモデル選択メニューでは、利用可能なAIモデルを切り替えられます。モデルによって、回答の速度、得意な処理、コンテキストの扱い、利用量の計算方法が異なることがあります。
モデルを選ぶときは、次のように目的とコストのバランスを考えます。
- 短い説明や簡単な質問では、標準または高速なモデルを選ぶ
- 複雑な設計、デバッグ、複数ファイルの変更では、推論に強いモデルを選ぶ
- 利用量を抑えたいときは、モデル名の近くに表示される利用倍率や説明を確認する
表示されるモデルと利用倍率は、Copilotのプラン、組織の設定、時期によって異なります。特定のモデルが常に利用できるとは限らないため、Chatのモデル選択メニューに表示される最新の情報を確認してください。
#
思考量を選択する
推論に対応したモデルでは、回答にかける思考量(推論の強さ)を選択できる場合があります。思考量を高くすると複雑な問題を詳しく検討しやすくなりますが、回答に時間がかかったり、利用量が多くなったりすることがあります。
- 低い思考量: 用語の確認、短い説明、単純な修正
- 中程度の思考量: 一般的なデバッグやテスト作成
- 高い思考量: 複雑な設計、原因の切り分け、広い範囲の変更
すべてのモデルやプランで思考量を変更できるわけではありません。選択欄が表示される場合だけ、タスクの複雑さに合わせて設定します。思考量を高くしても回答の正しさが保証されるわけではないため、生成結果の確認は必要です。
#
クレジットとは
GitHub Copilotでいうクレジットは、AIの利用量を管理するための単位です。プランによって毎月利用できる量が決められ、Chatへの依頼やモデルの種類、機能によって消費量が変わります。高性能なモデルや高度な処理では、1回の依頼で複数のクレジットを消費することがあります。
クレジットは、コードの品質や正しさを表す点数ではありません。また、VS Codeの画面に表示される利用可能量や呼び方は、契約やGitHubの請求方式によって異なる場合があります。アカウントの設定画面や利用状況ページで残量とリセット時期を確認し、必要に応じて低コストのモデルやAskモードを選びます。
#
選択したコードを説明・修正する
ファイル内のコードを選択すると、選択範囲を対象に質問できます。
- エディターで説明してほしいコードを選択します。
- 右クリックしてCopilotに関するメニューを開きます。
- コードの説明、修正、テスト作成などの操作を選択します。
- 提案された変更を確認します。
修正を依頼する場合は、目的を具体的に伝えます。例えば、次のように入力します。
この処理に入力値の検証を追加してください。既存の戻り値の形式は変更しないでください。
提案された変更は、差分を確認してから適用します。変更範囲が広い場合は、1つずつ内容を確認し、不要な変更を取り消してください。
#
インラインチャットを使う
インラインチャットを使うと、エディターを離れずに現在のコードについて依頼できます。
- エディターで対象のコードを選択します。
- コマンドパレットで
Copilotを検索し、インラインチャットを開始する操作を選択します。 - 変更したい内容を入力します。
- 表示された差分を確認し、適用またはキャンセルします。
依頼文には、変更する範囲と維持する条件を含めます。例えば、この関数だけを変更し、公開されている関数名は変えないでくださいのように指定します。
#
提案を確認して適用する
GitHub Copilotの提案を利用するときは、次の順番で確認します。
- 変更前後の差分を確認する。
- 生成された処理が依頼内容に合っているか確認する。
- 型、戻り値、例外処理、境界値を確認する。
- テストや静的解析を実行する。
- 問題がなければ変更を保存してコミットする。
エラーを修正する場合も、エラーメッセージを隠さずに原因を確認します。Copilotの提案だけでエラーが解消したと判断せず、実際にアプリケーションやテストを実行してください。
#
利用時の注意点
##
機密情報を入力しない
APIキー、パスワード、個人情報、顧客情報、社内の機密情報をプロンプトやチャットに入力しないでください。必要な場合は、実際の値を伏せた最小限の例に置き換えます。
##
生成されたコードを検証する
生成されたコードには、誤り、脆弱性、非効率な処理が含まれる可能性があります。特に認証、認可、入力値の検証、暗号化、データベース操作に関わるコードは、公式ドキュメントやテスト結果と照らし合わせて確認します。
##
ライセンスと依存関係を確認する
生成されたコードを公開ソフトウェアで利用する場合は、プロジェクトのライセンスや依存ライブラリの条件を確認します。コードの出所や利用条件に懸念がある場合は、採用前に確認してください。
##
変更を小さく保つ
大きな機能を一度に生成させるより、目的を小さな単位に分けて依頼すると、差分を確認しやすくなります。Gitで作業ブランチを作成し、変更前の状態を戻せるようにしておくと安心です。
#
まとめ
VS Codeでは、GitHub Copilotを使ってコード補完、チャットによる質問、選択したコードの説明や修正、インラインチャットを利用できます。
Copilotは開発を支援するツールであり、生成結果を無条件に採用するものではありません。依頼内容と差分を確認し、テスト、静的解析、セキュリティ確認を行いながら活用しましょう。
詳しいセットアップ方法は、GitHub Copilotのセットアップ(GitHub Docs)を参照してください。