docs/content/copilot/using-github-copilot/using-extensions-to-integra...

10 KiB

title intro product versions topics shortTitle type redirect_from
Using extensions to integrate external tools with Copilot Chat You can use {% data variables.product.prodname_copilot_extensions_short %} to interact with external tools in {% data variables.product.prodname_copilot_chat %}. {% data reusables.gated-features.copilot-extensions %}
feature
copilot-extensions
Copilot
Use Copilot Extensions how_to
/copilot/github-copilot-chat/github-copilot-extensions/about-github-copilot-extensions
/copilot/github-copilot-chat/github-copilot-extensions/using-github-copilot-extensions
/copilot/github-copilot-chat/github-copilot-extensions

{% data reusables.copilot.copilot-extensions.public-preview-note %}

About {% data variables.product.prodname_copilot_extensions %}

{% data reusables.copilot.copilot-extensions.copilot-extensions-intro %}

[!NOTE] {% data variables.product.prodname_copilot_extensions %} are not the same as the {% data variables.product.prodname_copilot %} extension, which you install in your IDE to use default {% data variables.product.prodname_copilot_short %} functionality like code completions and {% data variables.product.prodname_copilot_chat %}. For more information on the {% data variables.product.prodname_copilot %} extension, see "AUTOTITLE."

You can get started with {% data variables.product.prodname_copilot_extensions_short %} in one of two ways:

  • Build your own {% data variables.product.prodname_copilot_extension_short %}. See "AUTOTITLE."
  • Install a {% data variables.product.prodname_copilot_extension_short %} from {% data variables.product.prodname_marketplace %}.

You can interact with your custom-built or installed extension in a {% data variables.product.prodname_copilot_chat_short %} conversation, asking questions and performing actions that combine the capabilities of the external tool and {% data variables.product.prodname_dotcom %}. For example, if you install the Sentry extension for {% data variables.product.prodname_copilot %}, you can use the extension to get information about Sentry issues, then create and assign related tracking issues on {% data variables.product.prodname_dotcom %}.

{% data variables.product.prodname_copilot_extensions_short %} provide several benefits, including:

  • Interaction with external tools using natural language
  • Reduced context switching
  • Customization of your {% data variables.product.prodname_copilot_chat_short %} experience for your developer flow

{% data variables.product.prodname_copilot_extensions_short %} are included in all {% data variables.product.prodname_copilot_short %} subscriptions.

Supported clients and IDEs

{% data reusables.copilot.copilot-extensions.supported-clients-and-ides-table %}

Prerequisites

If you have a {% data variables.product.prodname_copilot_individuals_short %} subscription, you need to install a {% data variables.product.prodname_copilot_extension_short %} before you can use the extension in {% data variables.product.prodname_copilot_chat_short %}. See "AUTOTITLE."

If you have access to {% data variables.product.prodname_copilot_short %} through a {% data variables.product.prodname_copilot_business_short %} or {% data variables.product.prodname_copilot_enterprise_short %} subscription:

  1. An organization owner or enterprise owner needs to enable the {% data variables.product.prodname_copilot_extensions_short %} policy for your organization or enterprise. See "AUTOTITLE" and "AUTOTITLE" in the {% data variables.product.prodname_ghe_cloud %} documentation.
  2. An organization owner needs to install {% data variables.product.prodname_copilot_extensions_short %} for your organization. See "AUTOTITLE."

Using {% data variables.product.prodname_copilot_extensions %}

  1. To start using a {% data variables.product.prodname_copilot_extension_short %}, open a supported {% data variables.product.prodname_copilot_chat_short %} interface. See "Supported clients and IDEs."

  2. To see a list of all {% data variables.product.prodname_copilot_extensions_short %} available in your {% data variables.product.prodname_copilot_chat_short %} conversation, in the {% data variables.product.prodname_copilot_chat_short %} text box, type @.

    [!NOTE] If you are using {% data variables.product.prodname_copilot_chat_short %} in an IDE, and you or your organization owner install a {% data variables.product.prodname_copilot_extension_short %} while your IDE is open, you need to restart your IDE to begin using the {% data variables.product.prodname_copilot_extension_short %}.

  3. In the list of available {% data variables.product.prodname_copilot_extensions_short %}, click the one you want to use.

  4. To begin interacting with the {% data variables.product.prodname_copilot_extension_short %}, in the {% data variables.product.prodname_copilot_chat_short %} 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 {% data variables.product.prodname_copilot_extension_short %} yourself, and it is your first time using the {% data variables.product.prodname_copilot_extension_short %}, you will be asked to authorize the extension. See "AUTOTITLE."
    • If you ask a {% data variables.product.prodname_copilot_extension_short %} 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 {% data variables.product.prodname_copilot_extensions %}

  • When you are using a {% data variables.product.prodname_copilot_extension_short %}, consider how you would interact with the tool outside of {% data variables.product.prodname_copilot_chat_short %}, then use natural language to ask questions and assign tasks that integrate the capabilities of the tool with {% data variables.product.prodname_dotcom %}. For example, Sentry is an application monitoring software with a {% data variables.product.prodname_copilot_extension_short %}. The following are some example prompts for the Sentry extension for {% data variables.product.prodname_copilot %}:

    • @sentry list my most recent issues
    • @sentry tell me more about issue ISSUE-ID-OR-ISSUE-LINK
    • @sentry create a {% data variables.product.prodname_dotcom %} issue for the most recent Sentry issue and assign it to @DEVELOPER

    For information on the best ways to use a specific {% data variables.product.prodname_copilot_extension_short %}, read the description of the extension on {% data variables.product.prodname_marketplace %}.

  • Interactions with one {% data variables.product.prodname_copilot_extension_short %} will never be shared with another {% data variables.product.prodname_copilot_extension_short %}. To interact with different {% data variables.product.prodname_copilot_extensions_short %} in an IDE, change the @EXTENSION-NAME at the beginning of each sentence. Interactions with different extensions will appear in the same {% data variables.product.prodname_copilot_chat_short %} window, but the conversations themselves are automatically separated.

    {% ifversion ghec %} To interact with different {% data variables.product.prodname_copilot_extensions_short %} on {% data variables.product.prodname_dotcom_the_website %}, you need to start a new conversation for each extension by clicking {% octicon "plus" aria-label="New conversation" %} at the top of the {% data variables.product.prodname_copilot_chat_short %} window.{% endif %}

Additional resources

For questions and issues related to {% data variables.product.prodname_copilot_extensions %}, please use the following resources:

  • General issues for users and builders: Visit the {% data variables.product.github %} Support Portal.
  • Requests or feedback for {% data variables.product.github %}: Use the {% data variables.product.github %} Community Discussion Thread.
  • Requests or feedback for third-party extension publishers: File an issue in the User Feedback Repo and add a label with the extension's slug name.
  • {% data variables.product.github %} Technology Partners: Email the partnerships team directly for assistance.
  • {% data variables.product.prodname_copilot_extensions_vsc %}: For more information on this type of {% data variables.product.prodname_copilot_extension_short %}, see Chat extensions in the {% data variables.product.prodname_vscode %} documentation.

[!NOTE] {% data variables.product.github %} Support is not able to answer questions regarding {% data variables.product.prodname_copilot_extensions_vsc %}, as this implementation path is owned and maintained by the {% data variables.product.prodname_vscode_shortname %} team.

Further reading