About GitHub Copilot and Visual Studio
GitHub Copilot provides autocomplete-style suggestions from an AI pair programmer as you code. For more information, see "About GitHub Copilot".
If you use Visual Studio, you can view and incorporate suggestions from GitHub Copilot directly within the editor. This guide demonstrates how to use GitHub Copilot within Visual Studio for Windows.
Prerequisites
-
To use GitHub Copilot you must have an active GitHub Copilot subscription. For more information, see "About billing for GitHub Copilot."
-
To use GitHub Copilot in Visual Studio, you must have Visual Studio 2022 17.2 or later installed. For more information, see the Visual Studio IDE documentation.
Note: GitHub Copilot is not currently available for use with Visual Studio for Mac.
Installing the Visual Studio extension
To use GitHub Copilot, you must first install the Visual Studio extension.
-
In the Visual Studio toolbar, click Extensions, then click Manage Extensions.
-
In the "Manage Extensions" window, click Visual Studio Marketplace, search for the GitHub Copilot extension, then click Download.
-
Close the "Manage Extensions" window, then exit and relaunch Visual Studio.
-
Optionally, to check that GitHub Copilot is installed and enabled, go back to Manage Extensions, click Installed to view your currently installed extensions, then click GitHub Copilot to see status information.
-
Open or create a new project in Visual Studio.
-
In the "Microsoft Visual Studio" dialog box, to copy your device activation code, click OK.
-
A device activation window will open in your browser. Paste the device code, then click Continue.
- To paste the code in Windows or Linux, press Ctrl+v.
- To paste the code in macOS, press command+v.
-
GitHub will request the necessary permissions for GitHub Copilot. To approve these permissions, click Authorize GitHub Copilot Plugin.
-
After you approve the permissions, Visual Studio will show a confirmation.
Seeing your first suggestion
Note: If you have duplication detection enabled for GitHub Copilot, you may receive limited suggestions, or no suggestions, when using the code examples provided. As an alternative, you can start by typing your own code to see suggestions from GitHub Copilot. For more information on duplication detection, see "Enabling or disabling duplication detection."
- In Visual Studio, create a new C# (*.cs) file.
- In the C# file, type the following function signature. GitHub Copilot will automatically suggest an entire function body in grayed text, as shown below. The exact suggestion may vary.
C# int CalculateDaysBetweenDates(
- To accept the suggestion, press Tab.
Seeing alternative suggestions
For any given input, GitHub Copilot may offer multiple suggestions. You can select which suggestion to use, or reject all suggestions.
-
In Visual Studio, create a new C# (*.cs) file.
-
In the C# file, type the following function signature. GitHub Copilot will show you a suggestion.
C# int CalculateDaysBetweenDates(
-
If alternative suggestions are available, you can see these alternatives by pressing Alt+] (or Alt+[).
-
Optionally, you can hover over the suggestion to see the GitHub Copilot command palette for choosing suggestions.
-
To accept a suggestion, press Tab. To reject all suggestions, press Esc.
Generating code suggestions from comments
You can describe something you want to do using natural language within a comment, and GitHub Copilot will suggest the code to accomplish your goal.
-
In Visual Studio, create a new C# (*.cs) file.
-
In the C# file, type the following comment. GitHub Copilot will suggest an implementation of the function.
C# using System.Xml.Linq; var doc = XDocument.Load("index.xhml"); // find all images
-
To accept the suggestion, press Tab.
Enabling or disabling GitHub Copilot
The GitHub Copilot status icon in the bottom panel of the Visual Studio window indicates whether GitHub Copilot is enabled or disabled. When enabled, the background color of the icon will match the color of the status bar. When disabled, it will have a diagonal line through it.
-
To enable or disable GitHub Copilot, click the GitHub Copilot icon in the bottom panel of the Visual Studio window.
-
If you are disabling GitHub Copilot, you will be asked whether you want to disable suggestions globally, or for the language of the file you are currently editing.
- To disable suggestions from GitHub Copilot globally, click Enable Globally.
- To disable suggestions from GitHub Copilot for the specified language, click Enable for LANGUAGE.