VS Code 版 GitHub Copilot チートシート
Visual Studio Code 版 GitHub Copilot は、コードをより速く、より少ない労力で記述できるようにする AI 搭載機能を提供します。このチートシートでは、Visual Studio Code 版 GitHub Copilot の機能の概要を説明します。
VS Code 版 GitHub Copilot には、チャットビュー、エディター内、統合ターミナル、および VS Code ユーザーインターフェースの AI 搭載機能強化を通じてアクセスできます。
Copilot サブスクリプションをお持ちでない場合でも、Copilot Free プランにサインアップして、月間制限付きの補完とチャットインタラクションを利用することで、Copilot を無料で使用できます。
チームは、VS Code 版 Copilot の改善と新機能の追加に継続的に取り組んでいます。一部の機能はまだ試験段階です。ぜひお試しいただき、issue でフィードバックをお寄せください。
GitHub Copilot とチャット
自然言語を使用して GitHub Copilot とチャットし、コーディングタスクのヘルプを得ます。たとえば、Copilot にコードブロックやプログラミングコンセプトの説明を依頼します。Copilot Chat の詳細をご覧ください。
アクション | 説明 |
---|---|
⌃⌘I (Windows, Linux Ctrl+Alt+I) | チャットビューを開きます。 |
⇧⌥⌘L (Windows, Linux Ctrl+Shift+Alt+L) | クイックチャットを開き、Copilot に簡単な質問をします。 |
⌘I (Windows, Linux Ctrl+I) | インラインチャットを開始して、エディターから直接 Copilot にチャットリクエストを送信します。自然言語を使用するか、/ コマンドを使用して Copilot に指示を与えます。 |
⌘. (Windows, Linux Ctrl+.) | チャットビューでさまざまなチャットモードを切り替えます。 |
コンテキストを追加... |
チャットプロンプトにさまざまなタイプのコンテキストをアタッチします。 |
/explain |
Copilot にコードブロックまたはプログラミングコンセプトの説明を依頼します。 |
チャットセッションの履歴にアクセスします。 | |
音声 (ボイスチャット) を使用してチャットプロンプトを入力します。チャット応答は音声で読み上げられます。 |
ヒント
/
コマンドと@
参加者を使用して、より正確で関連性の高い回答を得ます。- 具体的に、シンプルに保ち、フォローアップの質問をして、最良の結果を得ます。
- ファイル、シンボル、または選択をチャットプロンプトにアタッチして、コンテキストを提供します。
- 適切なチャットモードを選択します: 質問、編集、またはエージェントモード。
チャットからコードを生成する
Copilot は、チャットプロンプトへの応答としてコードブロックを生成できます。生成されたコードをプロジェクトにすばやく適用したり、新しいファイルに挿入したりします。たとえば、Copilot にコード内のアルゴリズムを最適化するように依頼します。
アクション | 説明 |
---|---|
アクティブなエディターで生成されたコードブロックをスマート適用します。 | |
生成されたコードブロックをカーソル位置に挿入します。 | |
生成されたコードブロックをクリップボードにコピーします。 | |
生成されたコードブロックをシェルコマンドとしてターミナルに挿入します。 |
ヒント
- 使用するフレームワークまたはライブラリの詳細を提供します。
- カスタムコード生成手順の作成を検討してください。
プロンプトにコンテキストをアタッチする
Copilot にチャットプロンプトを送信するときに、コンテキストをアタッチして、Copilot が質問をより良く理解できるようにすることができます。たとえば、現在のエディターの選択、ファイル、またはシンボルをチャットプロンプトに追加します。Copilot を使用するためのベストプラクティスの詳細をご覧ください。
アクション | 説明 |
---|---|
コンテキストを追加 | クイックピッカーを開き、チャットプロンプトに関連するコンテキストを選択します。ワークスペースファイル、シンボル、現在のエディターの選択、ターミナルの選択など、さまざまなコンテキストタイプから選択します。 |
プロンプト... (試験的) |
再利用可能なプロンプト手順をリクエストに追加します。 |
ファイルをドラッグ & ドロップ | ファイルまたはエディタータブをチャットにドラッグ & ドロップして、ファイルをコンテキストとしてアタッチします。 |
フォルダーをドラッグ & ドロップ | フォルダーをチャットにドラッグ & ドロップして、その中のファイルをコンテキストとしてアタッチします。 |
問題をドラッグ & ドロップ | 問題パネルからアイテムをドラッグ & ドロップして、コンテキストとしてアタッチします。 |
最近使用したファイル (試験的) | 最近開いて編集したファイルをチャットプロンプトに自動的に含めます。詳細情報。 |
チャット変数
チャットプロンプトでチャット変数を使用して、質問に関連するコンテキストを参照します。
チャット変数 | 説明 |
---|---|
#changes |
ソース管理の変更リスト。 |
#codebase |
関連するワークスペースコンテンツをプロンプトのコンテキストとして追加します。 |
#fetch |
Web ページからコンテンツを取得します - URL を指定します。 |
#file |
クイックピッカーを開き、ワークスペースからファイルを選択して、プロンプトのコンテキストとして追加します。 |
#<filename> |
# の後にファイル名を入力して、ワークスペースファイルのファイル名候補を取得し、コンテキストとしてアタッチします。 |
#folder |
#folder: の後にフォルダー名を入力して、ワークスペースからフォルダーを選択し、プロンプトのコンテキストとして追加します。フォルダーを追加すると、その中のすべてのファイルがコンテキストとして追加されます。 |
#problems |
問題パネルからワークスペースの問題と問題をコンテキストとして追加します。コードの修正またはデバッグ中に役立ちます。 |
#searchResults |
検索ビューの結果をプロンプトのコンテキストとして追加します。 |
#selection |
現在のエディターの選択をプロンプトのコンテキストとして追加します。 |
#sym |
クイックピッカーを開き、ワークスペースからシンボルを選択して、プロンプトのコンテキストとして追加します。 |
#<symbol> |
# の後にシンボル名を入力して、ワークスペースファイルのシンボル候補を取得し、コンテキストとしてアタッチします。 |
#terminalSelection |
現在のターミナルの選択をチャットプロンプトのコンテキストとして追加します。 |
#terminalLastCommand |
最後に実行したターミナルコマンドをチャットプロンプトのコンテキストとして追加します。 |
#testFailure |
テスト失敗情報をコンテキストとして追加します。テストの実行と診断に役立ちます。 |
#usages |
「すべての参照を検索」、「実装を検索」、「定義へ移動」の組み合わせ。 |
#VSCodeAPI |
VS Code 拡張機能の開発に関連する質問をするために、VS Code API をプロンプトのコンテキストとして追加します。 |
エディターでの Copilot
エディターでコーディングしているときに、Copilot を使用して、入力時にコード補完を生成できます。インラインチャットを呼び出して、コーディングの流れを維持しながら、Copilot に質問してヘルプを得ます。たとえば、関数またはメソッドの単体テストを生成するように Copilot に依頼します。コード補完とインラインチャットの詳細をご覧ください。
アクション | 説明 |
---|---|
コード補完 | エディターで入力を開始すると、Copilot はコーディングスタイルに一致し、既存のコードを考慮したコード候補を提供します。 |
コードコメント | コードコメントに指示を記述して、Copilot にコード補完プロンプトを提供します。 例: # write a calculator class with methods for add, subtract, and multiply. Use static methods. |
次の編集候補 | Copilot の次の編集候補で、次のコード編集を予測します。github.copilot.nextEditSuggestions.enabled 設定で Copilot NES を有効にします。Copilot NES の始め方をご覧ください。 |
⌘I (Windows, Linux Ctrl+I) | インラインチャットを開始して、エディターから直接 Copilot にチャットリクエストを送信します。自然言語を使用するか、/ コマンドを使用して Copilot に指示を与えます。 |
F2 | コード内のシンボル名を変更するときに、AI 搭載の候補を取得します。 |
ヒント
- 意味のあるメソッド名または関数名を使用して、より迅速に適切なコード補完を取得します。
- コードブロックを選択して、インラインチャットプロンプトの範囲を絞り込むか、ファイルまたはシンボルをアタッチして関連するコンテキストをアタッチします。
- エディターのコンテキストメニューオプションを使用して、エディターから直接一般的な Copilot アクションにアクセスします。
AI コード生成をカスタマイズする
カスタム手順を定義して、Copilot がチームまたはプロジェクトのコーディングスタイル、ツール、および開発者ワークフローに一致するコードを生成またはレビューするのを支援します。
再利用可能なプロンプトファイルを使用すると、一般的なプロンプト手順と関連コンテンツを Markdown ファイル (*.prompt.md) で指定し、チャットプロンプトで再利用できます。
アクション | 説明 |
---|---|
ファイルベースの手順 | ワークスペースの .github/copilot-instructions.md ファイルにコード生成用の共有手順を定義します。これらの共通手順は、個人のコード生成手順を補完します。 |
コードレビュー手順 (プレビュー) | 設定でエディターの選択をレビューするか、ファイルからインポートするために Copilot を使用する手順を定義します。言語固有の手順を定義できます。 |
コード生成手順 (試験的) | 設定で GitHub Copilot を使用したコード生成の手順を定義するか、ファイルからインポートします。言語固有の手順を定義できます。 |
テスト生成手順 (試験的) | 設定で GitHub Copilot を使用したテスト生成の手順を定義するか、ファイルからインポートします。言語固有の手順を定義できます。 |
コミットメッセージ生成手順 (試験的) | 設定で GitHub Copilot を使用したコミットメッセージ生成の手順を定義するか、ファイルからインポートします。言語固有の手順を定義できます。 |
プルリクエストのタイトルと説明の生成手順 (試験的) | 設定で GitHub Copilot を使用したプルリクエストのタイトルと説明の生成手順を定義するか、ファイルからインポートします。言語固有の手順を定義できます。 |
再利用可能なプロンプトファイル (試験的) | 再利用可能なプロンプト手順を定義する Markdown ファイルに追加コンテキストを含む反復可能なタスクの再利用可能なプロンプト手順を定義し、チャットプロンプトで使用します。 |
ヒント
- 言語固有の手順を定義して、各言語に対してより正確な生成コードを取得します。
- 手順をファイルに保存して、チームやプロジェクト間で簡単に共有できるようにします。
コードのレビュー (試験的)
Copilot は、コードブロックの簡単なレビューパスを実行したり、ワークスペース内のコミットされていない変更のレビューを実行したりできます。レビューフィードバックはエディターにコメントとして表示され、そこで提案を適用できます。
アクション | 説明 |
---|---|
レビューとコメント (プレビュー) | コードブロックを選択し、エディターのコンテキストメニューから Copilot > レビューとコメント を選択して、簡単なレビューパスを実行します。 |
Copilot コードレビュー | ソース管理ビューの Copilot コードレビュー ボタンを選択して、コミットされていないすべての変更の詳細なレビューを行います。順番待ちリストに参加してください。 |
テストの生成
Copilot は、コードベース内の関数とメソッドのテストを生成できます。チャットのスラッシュコマンドの詳細をご覧ください。
アクション | 説明 |
---|---|
/tests |
エディター内のすべてまたは選択したメソッドと関数のテストを生成します。生成されたテストは、既存のテストファイルに追加されるか、新しいテストファイルが作成されます。 |
/setupTests |
コードのテストフレームワークの設定に関するヘルプを得ます。関連するテストフレームワーク、セットアップと構成の手順、および VS Code テスト拡張機能の提案に関する推奨事項を取得します。 |
/fixTestFailure |
失敗したテストの修正方法について Copilot に提案を求めます。 |
テストカバレッジ (試験的) | まだテストでカバーされていない関数とメソッドのテストを生成します。詳細情報。 |
ヒント
- 使用するテストフレームワークまたはライブラリの詳細を提供します。
ドキュメントの生成
コードベース内の関数とメソッドのコードドキュメントを生成します。チャットのスラッシュコマンドの詳細をご覧ください。
アクション | 説明 |
---|---|
/docs |
エディター内のすべてまたは選択したメソッドと関数のドキュメントコメントを生成します。 |
デバッグと問題の修正
Copilot を使用してコーディングの問題を修正し、VS Code でのデバッグセッションの構成と開始に関するヘルプを得ます。
アクション | 説明 |
---|---|
/fix |
コードブロックの修正方法や、コード内のコンパイラーまたは Linting エラーを解決する方法について Copilot に提案を求めます。たとえば、未解決の Node.js パッケージ名を修正するのに役立ちます。 |
/fixTestFailure |
失敗したテストの修正方法について Copilot に提案を求めます。 |
/startDebugging (試験的) |
launch.json デバッグ構成ファイルを生成し、チャットビューからデバッグセッションを開始します。 |
copilot-debug コマンド |
プログラムのデバッグに役立つターミナルコマンド。実行コマンドにプレフィックスを付けて、デバッグセッションを開始します (例: copilot-debug python foo.py )。 |
ヒント
- メモリ消費量やパフォーマンスの最適化など、必要な修正の種類に関する追加情報を提供します。
- コードの問題を修正するための提案を示す Copilot コードアクションをエディターで監視します。
新しいプロジェクトの作成
Copilot は、プロジェクト構造のスケルトンを生成したり、要件に基づいてノートブックを生成したりすることで、新しいプロジェクトの作成を支援できます。
アクション | 説明 |
---|---|
/new |
チャットビューで /new コマンドを使用して、新しいプロジェクトまたは新しいファイルをスケルトン作成します。自然言語を使用して、必要なプロジェクト/ファイルの種類を説明し、スケルトン作成されたコンテンツを作成前にプレビューします。例: /new Express app using typescript and svelte |
/newNotebook |
チャットビューで /newNotebook コマンドを使用して、要件に基づいて新しい Jupyter ノートブックを生成します。自然言語を使用して、ノートブックに含める内容を説明します。例: /newNotebook get census data and preview key insights with Seaborn 。 |
ソース管理と課題
Copilot は、コミットとプルリクエストの変更を分析し、コミットメッセージとプルリクエストの説明の提案を提供できます。
アクション | 説明 |
---|---|
コミット | ソース管理コミットの現在の変更に対するコミットメッセージを生成します。 |
プルリクエスト | プルリクエストの変更に対応するプルリクエストのタイトルと説明を生成します。 |
@github |
チャットで @github 参加者を使用して、リポジトリ全体の問題、プルリクエストなどについて質問します。利用可能な GitHub スキルの詳細をご覧ください。例: @github What are all of the open PRs assigned to me? 、@github Show me the recent merged pr's from @dancing-mona |
検索
Copilot を使用して、検索ビューでより関連性の高い検索結果を取得します。
アクション | 説明 |
---|---|
セマンティック検索 (試験的) | クエリに対してセマンティックに関連する検索ビューの Copilot からの検索結果を含めます。 |
ターミナル
シェルコマンドと、ターミナルでコマンドを実行する際のエラーを解決する方法に関するヘルプを得ます。
アクション | 説明 |
---|---|
⌘I (Windows, Linux Ctrl+I) | ターミナル内でインラインチャットを開始して、自然言語を使用してシェルコマンドをすばやく取得して実行します。 例: how many cores on this machine? |
@terminal |
チャットビューで @terminal 参加者を使用して、統合ターミナルまたはシェルコマンドに関する質問をします。例: @terminal list the 5 largest files in this workspace |
@terminal /explain |
チャットビューで /explain コマンドを使用して、ターミナルから何かを説明します。例: @terminal /explain top shell command |
Python とノートブックのサポート
チャットを使用して、ネイティブ Python REPL および Jupyter ノートブックで Python プログラミングタスクを支援できます。
アクション | 説明 |
---|---|
生成 ⌘I (Windows, Linux Ctrl+I) |
ノートブックでインラインチャットを開始して、コードブロックまたは Markdown ブロックを生成します。 |
# |
より関連性の高い応答を得るために、チャットプロンプトに Jupyter カーネルからの変数をアタッチします。 |
ネイティブ REPL + ⌘I (Windows, Linux Ctrl+I) | ネイティブ Python REPL でインラインチャットを開始し、生成されたコマンドを実行します。 |
⌃⌘I (Windows, Linux Ctrl+Alt+I) | チャットビューを開き、編集モードまたはエージェントモードを使用してノートブックを編集します。 |
/newNotebook |
チャットビューで /newNotebook コマンドを使用して、要件に基づいて新しい Jupyter ノートブックを生成します。自然言語を使用して、ノートブックに含める内容を説明します。例: /newNotebook get census data and preview key insights with Seaborn 。 |
VS Code コマンドと API
Copilot を使用して、VS Code 機能、設定、および VS Code 拡張機能 API に関するヘルプを得ることができます。チャット参加者の詳細をご覧ください。
アクション | 説明 |
---|---|
@vscode |
@vscode チャット参加者を使用して、自然言語を使用して VS Code について質問します。例: @vscode how to enable word wrapping? |
@vscode /runCommand |
@vscode チャット参加者で /runCommand を使用して、VS Code コマンドを実行します。@vscode /runCommand enable developer mode |
@vscode /search |
@vscode チャット参加者で /search を使用して、VS Code 検索を生成します。例: @vscode /search python files without imports |
ヒント
- VS Code 拡張機能 API について質問する場合は、
#vscodeAPI
チャット変数を使用します。