Skip to main content

Using extensions to integrate external tools with Copilot Chat

You can use Copilot Extensions to interact with external tools in GitHub Copilot Chat.

Who can use this feature?

Anyone with a GitHub Copilot Individual subscription can use Copilot Extensions.

For organizations or enterprises with a Copilot Business or Copilot Enterprise subscription, organization owners and enterprise administrators can grant access to Copilot Extensions.

Note

GitHub Copilot Extensions is in public beta and subject to change.

About GitHub Copilot Extensions

GitHub Copilot Extensions are a type of GitHub App that integrates the power of external tools into GitHub Copilot Chat. Copilot Extensions can be developed by anyone, for private or public use, and can be shared with others through the GitHub Marketplace.

Note

GitHub Copilot Extensions are not the same as the GitHub Copilot extension, which you install in your IDE to use default Copilot functionality like code completions and GitHub Copilot Chat. For more information on the GitHub Copilot extension, see "Getting code suggestions in your IDE with GitHub Copilot."

You can get started with Copilot Extensions in one of two ways:

You can interact with your custom-built or installed extension in a Copilot Chat conversation, asking questions and performing actions that combine the capabilities of the external tool and GitHub. For example, if you install the Sentry extension for GitHub Copilot, you can use the extension to get information about Sentry issues, then create and assign related tracking issues on GitHub.

Copilot Extensions provide several benefits, including:

  • Interaction with external tools using natural language
  • Reduced context switching
  • Customization of your Copilot Chat experience for your developer flow

Copilot Extensions are included in all Copilot subscriptions, and can be used with:

  • Copilot Chat in Visual Studio
  • Copilot Chat in Visual Studio Code
  • Copilot Chat in GitHub.com (with a Copilot Enterprise subscription)

Prerequisites

If you have a Copilot Individual subscription, you need to install a Copilot Extension before you can use the extension in Copilot Chat. See "Extending the capabilities of GitHub Copilot in your personal account."

If you have access to Copilot through a Copilot Business or Copilot Enterprise subscription:

  1. An organization owner or enterprise owner needs to enable the Copilot Extensions policy for your organization or enterprise. See "Managing policies for Copilot in your organization" and "Managing policies and features for Copilot in your enterprise" in the GitHub Enterprise Cloud documentation.
  2. An organization owner needs to install Copilot Extensions for your organization. See "Extending the capabilities of GitHub Copilot in your organization."

Supported clients and IDEs

Clients and IDEsCopilot Extensions support
Visual Studio Code
Visual Studio
GitHub.com
GitHub Mobile
JetBrains
Vim/Neovim
CLI
Xcode

Using GitHub Copilot Extensions

  1. To start using a Copilot Extension, open any of the following Copilot Chat interfaces:

  2. To see a list of all Copilot Extensions available in your Copilot Chat conversation, in the Copilot Chat text box, type @.

    Note

    If you are using Copilot Chat in an IDE, and you or your organization owner install a Copilot Extension while your IDE is open, you need to restart your IDE to begin using the Copilot Extension.

  3. In the list of available Copilot Extensions, click the one you want to use.

  4. To begin interacting with the Copilot Extension, in the Copilot Chat text box, ask the extension to answer a question or perform an action, then press Enter. For each new request, be sure to include @EXTENSION-NAME at the beginning of your sentence.

    • If you did not install the Copilot Extension yourself, and it is your first time using the Copilot Extension, you will be asked to authorize the extension. See "Authorizing GitHub Apps."
    • If you ask a Copilot Extension to perform an action, you need to confirm the extension has your permission to act on your behalf before it will complete the task. After carefully reviewing the proposed action, in the confirmation dialog, click Allow or Dismiss.

Tips for using GitHub Copilot Extensions

  • When you are using a Copilot Extension, consider how you would interact with the tool outside of Copilot Chat, then use natural language to ask questions and assign tasks that integrate the capabilities of the tool with GitHub. For example, Sentry is an application monitoring software with a Copilot Extension. The following are some example prompts for the Sentry extension for GitHub Copilot:

    • @sentry list my most recent issues
    • @sentry tell me more about issue ISSUE-ID-OR-ISSUE-LINK
    • @sentry create a GitHub issue for the most recent Sentry issue and assign it to @DEVELOPER

    For information on the best ways to use a specific Copilot Extension, read the description of the extension on GitHub Marketplace.

  • Interactions with one Copilot Extension will never be shared with another Copilot Extension. To interact with different Copilot Extensions in an IDE, change the @EXTENSION-NAME at the beginning of each sentence. Interactions with different extensions will appear in the same Copilot Chat window, but the conversations themselves are automatically separated.

    To interact with different Copilot Extensions on GitHub.com, you need to start a new conversation for each extension by clicking at the top of the Copilot Chat window.

Additional resources

For questions and issues related to GitHub Copilot Extensions, please use the following resources:

Note

GitHub Support cannot answer questions regarding VS Code Chat Extensibility, as this platform is owned and maintained by the VS Code product team.

To learn more about building Copilot Extensions, see "About building Copilot Extensions."