Skip to main content

Setting up Copilot Extensions

Follow these steps to start building Extensions Copilot.

Tool navigation

This article is designed to help you build an entirely new Extension GitHub Copilot. To instead learn how to quickly build and test a demo Extension Copilot created by GitHub, see Démarrage rapide pour les extensions GitHub Copilot.

Les compĂ©tences et les agents sont les deux moyens d'Ă©tendre les capacitĂ©s et le contexte de Copilot via la plateforme Plateforme d’extensibilitĂ© Copilot. Ils vous permettent d'intĂ©grer des services externes et des API dans Copilot Chat, mais chacun d'entre eux rĂ©pond Ă  des cas d'utilisation diffĂ©rents et offre des niveaux de contrĂŽle et de complexitĂ© diffĂ©rents :

  • ensembles de compĂ©tences sont lĂ©gers et simplifiĂ©s, conçus pour les dĂ©veloppeurs qui ont besoin de Copilot pour effectuer des tĂąches spĂ©cifiques (par exemple, rĂ©cupĂ©ration de donnĂ©es ou opĂ©rations simples) avec une configuration minimale. Ils gĂšrent automatiquement le routage, l’élaboration rapide, l’évaluation des fonctions et la gĂ©nĂ©ration de rĂ©ponse, ce qui les rend idĂ©ales pour les intĂ©grations rapides et simples. For more information about skillsets, see À propos des compĂ©tences requises pour les extensions Copilot.
  • Agents concernent des intĂ©grations complexes qui ont besoin d’un contrĂŽle total sur la façon dont les demandes sont traitĂ©es et les rĂ©ponses sont gĂ©nĂ©rĂ©es. Ils vous permettent d’implĂ©menter une logique personnalisĂ©e, d’intĂ©grer d’autres llms et/ou de l’API Copilot, de gĂ©rer le contexte de conversation et de gĂ©rer tous les aspects de l’interaction utilisateur. Bien que les agents nĂ©cessitent davantage d'ingĂ©nierie et de maintenance, ils offrent une flexibilitĂ© maximale pour les flux de travail sophistiquĂ©s. Pour plus d’informations sur les comptes, consultez About agents for Copilot Extensions.

1. Learn about Agents Copilot

Agents Copilot contain the custom code for your Extension Copilot, and integrate with a GitHub App to form the Extension Copilot itself. For more information, see About agents for Copilot Extensions.

To successfully build a Agent Copilot, you need to understand how the agent communicates with:

2. Review example Agents Copilot and the Extensions Copilot SDK

To see the previous concepts in practice and learn about agent implementations, review the following example agents and software development kit (SDK), all of which are available in the copilot-extensions organization:

  • Blackbeard (best starting point): A simple agent that responds to requests like a pirate using Copilot's large language model (LLM) API and special system prompts.
  • GitHub Models: A more complex agent that lets you ask about and interact with various LLMs listed on the GitHub Marketplace through Copilot Chat. The GitHub Models agent makes use of function calling.
  • Function Calling: An example agent written in Go that demonstrates function calling and confirmation dialogs.
  • RAG Extension: An example agent written in Go that demonstrates a simple implementation of retrieval augmented generation.
  • Preview SDK: An SDK that streamlines the development of Extensions Copilot by handling request verification, payload parsing, and response formatting automatically. This SDK allows extension builders to focus more on creating core functionality and less on boilerplate code.

3. Build a Agent Copilot

Using the reference material from the previous steps, plan and build your Agent Copilot. You can choose to implement any of the following options:

4. Deploy your Agent Copilot

To make your Agent Copilot accessible to the Copilot platform and GitHub, you need to deploy it to a server that is reachable by HTTP request. See Configuring your server to host your Copilot extension.

5. Create a GitHub App and integrate it with your Agent Copilot

To create a Extension Copilot, you need to create and configure a GitHub App, then integrate it with your Agent Copilot. See Creating a GitHub App for your Copilot Extension and Configuring your GitHub App for your Copilot extension.

6. Choose the availability of your Extension Copilot

Choose one of two visibility levels for your Extension Copilot:

  • Public: Any user or organization account with the installation page link for the extension can install it.
  • Private: Only the user or organization account that created the extension can install it.

If you make your Extension Copilot public, you can then choose to list it on the GitHub Marketplace.

To learn how to change the visibility of your Extension Copilot and list it on the GitHub Marketplace, see Managing the availability of your Copilot Extension.

Next steps

To learn how to use your Extension Copilot, see Utilisation d’extensions pour intĂ©grer des outils externes Ă  Copilot Chat.

1. Learn about Ensembles de compétences Github Copilot

Ensembles de compétences Github Copilot contain the custom code for your Extension Copilot, and integrate with a GitHub App to form the Extension Copilot itself.

Unlike Agents Copilot, Ensembles de compĂ©tences Copilot handle the logic behind prompt crafting, function evaluation, and response generation, making them an ideal choice for developers seeking quick and effective integrations with minimal effort. For more information, see À propos des compĂ©tences requises pour les extensions Copilot.

2. Build a Ensemble de compétences Copilot

To explore an example of a skillset implementation, see the skillset-example repository in the copilot-extensions organization.

To build a skillset, see Ensembles de compétences Copilot.

3. Deploy your Ensemble de compétences Copilot

To make your Ensemble de compétences Copilot accessible to the Copilot platform and GitHub, you need to deploy it to a server that is reachable by HTTP request. See Configuring your server to host your Copilot extension.

4. Create a GitHub App and integrate it with your Ensemble de compétences Copilot

To create a Extension Copilot, you need to create and configure a GitHub App, then integrate it with your Ensemble de compétences Copilot. See Creating a GitHub App for your Copilot Extension and Configuring your GitHub App for your Copilot extension.

5. Choose the availability of your Ensemble de compétences Copilot

Choose one of two visibility levels for your Extension Copilot:

  • Public: Any user or organization account with the installation page link for the extension can install it.
  • Private: Only the user or organization account that created the extension can install it.

If you make your Extension Copilot public, you can then choose to list it on the GitHub Marketplace.

To learn how to change the visibility of your Extension Copilot and list it on the GitHub Marketplace, see Managing the availability of your Copilot Extension.

Next steps

To learn how to use your Extension Copilot, see Utilisation d’extensions pour intĂ©grer des outils externes Ă  Copilot Chat.