Tech

GitHub Copilotの機能一覧

投稿日:

はじめに

GitHub Copilotについて、コード補完以外の機能を活用できていないので、まず初めにどのような機能があるのか調査しました。

まず初めに、機能の一覧を列挙し、それぞれについて簡単に説明します。

次に、CopilotをCLIで動かしてみます。

GitHub Copilotの機能

GitHub Copilotには様々な機能が備わっています。

コード補完

入力中に、Copilotがコードの提案を行う機能です。

1行から数行程度のコードが提案され、Tabキーを押すことでコードに反映することができます。

場合によっては、Copilotは複数の提案を行うことがあります。その場合、 option または Alt + ] キーを押すことで、候補を切り替えることができます。

Copilotからの提案は一括で反映する方法に加え、部分的に反映させる方法もあります。 command + キーを押すことで、部分的にコードに反映させることができます。

また、コード補完の提案を生成するためのLLMを変更することもできますが、ここでは割愛します。詳しくは、「Copilot コード補完の AI モデルを変更する」をご覧ください。

Copilot Chat

コーディング関連の質問をできるチャットインタフェースです。

Copilot Chatは、GitHubのWebサイト、GitHubMobile、各種IDEで使用できます。

GitHubのWebサイトで利用する場合は以下のようになります。

  1. ページ上部の検索バーの横にあるCopilotのアイコンをクリックする
  2. 表示されたプロンプトに質問を入力してEnterキーを押す
    • 必要に応じて、回答を中断できる
    • CopilotがBing検索を使って質問に回答する場合は、応答の上部にある[n references]リンクをクリックして検索結果を表示できる
    • 会話スレッド内で、フォローアップの質問をすることができる

また、別のモデルをつかって回答を再生成することもできます

Copilotコーディングエージェント

コードを自動的に変更できる自立型のエージェントです。

GitHubのIssueをCopilotに割り当てることができ、エージェントは必要な変更を行いPRを作成します。

また、Copilot ChatからPRを作成するようにCopilotに依頼することもできます。

コマンドラインでのCopilotの使用

コマンドライン上からCopilotに対して操作を行うことができます。

前提条件として、 gh コマンドがインストールされており、Copilotの拡張機能がインストールされている必要があります。

CLIでの操作については、後ほど別途紹介します。

Copilotによるコードレビュー

CopilotからPRに対するレビューを受けることができます。

Copilotからレビューを受けるには、PRのReviewersでCopilotを選択します。そうすると、数十秒後にはPRにレビューコメントが表示されます。

Copilotのレビューにはいくつか種類があり、具体的なコードを提案するコメント、コードに対する指摘を行うコメント(指摘とnitsレベルのもの)があります。

Copilotのレビューコメントに対してコメントやリアクションをすることができますが、Copilotにはフィードバックされません。

Copilotのレビューに対する修正を行ったあとの再レビューは、手動でReviewrsの横のアイコンをクリックする必要があります(自動的には行われません)

コードレビュー時に考慮すべき情報をCopilotに与えてカスタマイズすることができます。 .github/copilot-instructions.md をリポジトリに追加することで、Copilotのレビューをカスタマイズできます。詳細については、「GitHub Copilot のリポジトリ カスタム命令を追加する」を参照してください。

CopilotによるPRの要約

GitHub Copilotを使ってPRの概要を生成することができます。

Copilotテキスト入力候補

こちらの機能はパブリックプレビュー段階のため、今後変更される場合があります。

Copilotのテキスト入力候補を使うと、AIで生成されたオートコンプリートを使ってPRの説明を素早く正確に記述することができます。

GitHub Copilot Extensions

Copilot Chatの機能を拡張する機能で、開発者は外部ツール、サービス、カスタム動作などをCopilot Chatに組み込むことができます。

例えば、以下のような機能を追加できます。

  • サードパーティのAIモデルを使ってコードの提案を行う
  • サードパーティのドキュメントサービスやデータサービスのクエリを実行して、特定のトピックスに関する情報を見つける
  • メッセージボードへの投稿や外部システム内のデータの更新などのアクションを実行する

Copilot Chat Extensionsは、GitHub Appsを使用して構築されるため、クロスプラットフォームでの互換性が担保されています。

より詳しい情報については、こちらをご覧ください。

公開範囲

Copilot Chat Extensionsは、公開、非公開、GitHub Marketplaceへの登録等、Extensionの公開範囲を適切に設定することができます。

スキルセットとエージェント

スキルセットとエージェントを使うことで外部サービスとAPIをCoplilot Chatに統合することができます。

スキルセットは最小限のセットアップで特定のタスク(データの取得や単純なタスクの実行など)を実行することができます。

エージェントは、リクエストの処理方法とレスポンスの生成方法を詳細に制御することができます。

コンテキストの受け渡し

GitHub Appの設定で、 Copilot Editor Context のアクセス許可に対して Read-Only アクセスレベルを有効にすると、現在開いているファイルなどのコンテキストをCopilot Extensionでエディタから受け取ることができます。

Copilot Edits

Copilot EditsはVisual Studio Code、Visual Studio、JetBrains等のIDEで利用できます。

1つのCopilot Chatのプロンプトから複数のファイルに変更を加えるには、Copilot Editsを利用します。

Copilot Editsのモード

Copilot Editsには、編集モードとエージェントモードの2つのモードがあります。

編集モードはVS CodeとJetBrainsのIDEでのみ使用できます。

Copilotから提案される編集をより詳細に制御する場合には、編集モードを使います。Copilotが変更するファイルを選び、コンテキストを提供し、提案された編集を受けれるかを選択します。

Copilotが自律的に編集できるようにする場合には、エージェントモードを使います。Copilotがどのファイルに変更を加えるかを決定し、コードの変更とターミナルコマンドを提供し、完了するまでやり取りを繰り返します。

Copilotのカスタム指示

十分なコンテキストを提供することにより、個人の好み、チームの作業方法、使用するツール、プロジェクトの詳細などに合わせてカスタマイズされたチャットの回答を得ることができます。

カスタマイズ方法についてはこちらをご覧ください。

GitHub DesktopでのCopilot

プロジェクトの変更に基づき、GitHub DesktopでのCopilotを使ってコミットメッセージと説明を自動生成します。

Copilot Spaces

コード、ドキュメント、仕様などをコンテンツのスペースで一元管理することで、特定のタスクに沿ったコンテキストでCopilotの回答を得ることができます。

こちらは現在パブリックプレビューとなっています。詳細についてはこちらをご覧ください。

Copilotナレッジベース

Copilotとのチャットのコンテキストとして使用するドキュメントの作成と管理を行います。

Copilot Chat in GitHubかVS Codeで質問するときに、質問のコンテキストとしてナレッジベースを指定できます。

こちらはCopilot Enterpriseのみ利用できます。

GitHub Spark

GitHub Sparkを使うと、やりたいことを自然言語で記述することで、データストレージ、AI機能、GitHub認証などが組み込まれたフルスタックのWebアプリをフルマネージドランタイムにデプロイできます。

SparkはGitHubとシームレスに統合されているため、GitHub codespaceとCopilotを使ってSparkを開発できます。

こちらはパブリックプレビューとなっており、詳細はこちらをご覧ください。

コマンドラインでCopilotを動かしてみる

コマンドラインでCopilotを動かすためには、 gh コマンドとCopliot拡張機能をインストールし、GitHub CLIアカウントで認証を行う必要があります。

ログインはWebを開いて行うか、Personal access tokenを発行してそれを使うかの2種類の方法があります。

gh コマンドのインストールは brew などで行えます。

Copilot拡張機能をインストールする

gh コマンドをインストールしたら、GitHub CLIアカウントの認証を行います。

以下のように対話型で実行していきます(今回は、Webブラウザでログインしました)

こうすると、ブラウザが立ち上がり、ブラウザ上でワンタイムコードを入力し、画面の指示に従って進めていくと、ログインすることができます。

 

ログインが済んだら、Copilot拡張機能をインストールします。

これで、コマンドライン上でCopilotが使えるようになりました。

ちなみに、Copilot拡張機能の更新は、以下のコマンドで行えます。

Copilotのコマンド一覧

Copilotのコマンドのヘルプを見てみると、 aliasconfigexplainsuggest の4つのコマンドがあります。

エイリアスの作成

alias コマンドは、 gh copilot コマンドを呼び出すためのオプションのシェル固有のエイリアスと関数を生成します。これにより、キーストロークを減らしてコマンドの実行が楽になります。

使用例は以下の通りです。

Copilotの設定の変更

config コマンドは、オプションの分析データ送信などの設定を変更します。

このコマンドを実行すると、対話型で設定を変更することができます。

コマンドの説明の取得

explain コマンドは、入力したコマンドについて自然言語で説明します。

使用例は以下の通りです。

コマンドの提案の取得

suggest コマンドは、Copilotに対して自然言語で指示を与え、それに対するコマンドの提案を受けることができます。

使用例は以下のとおりです。

gh copilot suggest コマンドを引数を与えないで実行すると、対話型で指示を与えることができます。

また、以下のように引数を与えて実行することもできます。

さいごに

GitHub Copilotの機能の一覧について、それぞれがどのような機能なのか大まかに説明し、その中で、コマンドライン上でのCopilotの利用を実際に試してみました。

Copilotは、他のAIエージェントやコーディングツールと比べて安価に利用できるので、まずはこれをもっと活用できるようにしていきたいと思います。

おすすめ書籍

現場で活用するためのAIエージェント実践入門 (KS情報科学専門書) MCP AIエージェント開発入門

blog-page_footer_336




blog-page_footer_336




-Tech
-

執筆者:

免責事項

このブログは、記事上部に記載のある投稿日時点の一般的な情報を提供するものであり、投資等の勧誘・法的・税務上の助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

react-icon

[React初心者]カスタムフックについて学ぶ

1 はじめに2 Ract Hook(フック)とは3 カスタムフックの実装3.1 フックのルール3.2 カスタムフック3.3 カスタムフックの実装4 さいごに5 おすすめ書籍 はじめに 今回はReact ...

【Flutter】ボタンタップ時に展開するアニメーションがしたい!

1 はじめに2 Flowウィジェット2.1 Animation2.2 AnimationController3 実装4 さいごに5 おすすめ書籍 はじめに Flutterでボタンなどを設置するのはとて ...

[Unity] Terrain(地形)を使ってみた

1 はじめに2 Terrainの追加方法3 Terrainの使い方4 Create Neighbor Terrain5 Paint Terrain5.1 Raise or Lower Terrain5 ...

Apple製のフレームワークCombineを触ってみた

1 はじめに2 Combineとは3 Publishers3.1 Future4 Subscribers4.1 sink4.2 assign5 Operators5.1 Prepend5.2 Appe ...

【iOS14】App Groups を使用して WidgetKit にデータ共有

1 はじめに2 App Groupsの準備2.1 App Groupsの許可2.2 App Groupsの使い方3 WidgetKitにデータ共有4 さいごに5 おすすめ書籍 はじめに 今回はアプリ側 ...

フォロー

blog-page_side_responsive

2025年9月
 123456
78910111213
14151617181920
21222324252627
282930  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。