Alternative Architecture DOJO

オルターブースのクラウドネイティブ特化型ブログです。

【GitHub Copilot Chat】いまさら聞けない?GitHub Copilot Chatの使い方について詳しくご紹介します!

こんにちは!オルターブースアドベントカレンダー 2023 の13日目はエンジニアの馬場が担当します。

adventar.org

GitHub Copilot Chat使ってますか?

今月めでたくGA(一般提供)となったGitHub Copilot Chat!みなさん使ってますか?

docs.github.com

先月行われたGitHub Universe2023でもGitHub Copilotまわりのたくさんのアップデートがありました。 アップデート内容や GitHub Universe2023の内容については以下をご覧ください↓

aadojo.alterbooth.com

わたしは普段からたくさん使っています!GitHub Copilot Chatを使うのと使わないのでは、業務のスピードが全然違ってくるなと感じています。
とはいえ何もかもGitHub Copilotでできるわけではありません。よって今回はGitHub Copilot Chatの基本的な使い方についてわかりやすくまとめてみました!

GitHub Copilot Chatの始め方

まずはGitHub Copilot Chatの始め方について簡単にご説明します。
GitHub Copilot ChatはGitHub Copilotの有料のライセンスが必要です。個人と企業で料金が違います。

docs.github.com

GitHub Copilot Chatが使用できるのは、Visual Studio Code、Visual Studio、JetBrains製品、そしてGitHub.com(GitHub Codespaces上で使えます)です。
GitHub.com以外で使用する場合は各IDEの設定が必要です。以下のドキュメントやブログに詳細がありますのでのぞいてみてください!

docs.github.com

aadojo.alterbooth.com

GitHub Copilot Chatのいいところ

すでにGitHub Copilotをお使いの方は「書きたいコードをコメントに書けばCopilotがコードを書いてくれる」や、「コード書いている途中に、コードの続きを候補として表示してくれる」機能についてご存知かと思います。
GitHub Copilot Chatは「Chat(チャット)」なので、GitHub Copilotと自然言語でチャットすることができます。その中でコードについて説明をしてくれたり、書き方を教えてくれたり、テストを書いたりしてくれます。

基本的な使い方

さぁさっそく使っていきましょう!
今回はVisual Studio Codeを使って試してみます。まずチャットセッションを開いてチャットできるようにしましょう。

ここに文字を打つとチャットが開始されます。簡単ですね。(初めて使う時は認証情報を入力する必要があります)
デフォルトだと左側に表示されますが、右上の「...」をクリックするとエディター側でチャットを開く、もしくは新しい独立したウィンドウを開いてチャットをすることができます。

ctr+iでインラインモードという、エディターの任意の行でGitHub Copilot Chatを開くこともできます。

コードを書こう

次にコードを書いていきます。ASP.NET CoreのRazor PagesでセッションIDを取得するコード書いてもらいましょう。

ものの数秒でコードを提示してくれました!すごい。
このコードをそのまま使用するときはコード全体を選んでコピペ…ではなく、右上のツールからコピペをすることができます。

新しいファイルにコードを移すこともできますし、真ん中のボタンを使うとエディターの任意の行を指定してコードを直接移動させることもできます。

コードがエラーになったとき

こんな感じでサクサクと提示してもらったコードを使用していたのになぜだかエラー表示が…なんてこともあります。
そんなときもGitHub Copilot Chatにエラーの原因を尋ねてみましょう。 チャットウィンドウから直接聞くのもいいですが、エラーとなってる波線コードの上で右クリックをすると「クイックフィックス」からCopilotによる修正or説明を選択することができます。
わたしはいきなり修正されるより説明してもらってから修正するほうが好きなので、説明の方を選択します。

するとチャットウィンドウに@workspace /explaneが入力され説明をしてくれました。非同期になっていないことが原因でエラーが出ていたことがわかります。

ここで2点補足です。

①チャットの下部に次の質問を予測した内容が表示される

画像をよく見ると「✨セッションIDを取得するために…」と出てきています。これはCopilotが関連した質問を予測してくれています。これをクリックすると、この質問に対してCopilotが答えてくれるようになっています。

/explaneとは? スラッシュコマンドと呼ばれるGitHub Copilot Chat上でのコマンドです。スラッシュコマンドを入力すれば「このコードを説明して」と書かなくても説明してくれます。ショートカットキーのようなもので非常に便利です。
以下はVisual Studioのドキュメントですが、使用できるコマンドについてまとめられています。(一部Visual Studioのみのコマンドあり)

learn.microsoft.com

チャットウィンドウで/を入力すると候補が出てくるので試してみてください!

まとめ

今回はGitHub Copilot Chatの基本的な使い方についてご紹介しました。
次のブログではGitHub Copilot Chatの使用例についていくつかご紹介したいと思います!


サービス一覧 www.alterbooth.com cloudpointer.tech www.alterbooth.com