Skip to main content

Acerca de la compilación de Copilot Extensions

Obtenga más información sobre el proceso de desarrollo de Copilot Extensions.

Note

GitHub Copilot Extensions se encuentra en versión preliminar pública y está sujeto a cambios.

Acerca de Copilot Extensions

Copilot Extensions son integraciones que amplían la funcionalidad de Copilot Chat, lo que permite a los desarrolladores incorporar herramientas externas, servicios y comportamientos personalizados en la experiencia de chat. Puede usar Copilot Extensions para ampliar las funcionalidades de Copilot Chat de varias maneras, incluidas:

  • Documentación sobre consultas: una Copilot Extension puede permitir que Copilot Chat consulte un servicio de documentación de terceros para encontrar información sobre un tema específico.
  • Codificación asistida por IA: una Copilot Extension puede usar un modelo de IA de terceros para proporcionar sugerencias de código.
  • Recuperación de datos: una Copilot Extension puede permitir que Copilot Chat consulte un servicio de datos de terceros para obtener información sobre un tema específico.
  • Ejecución de acciones: una Copilot Extension puede permitir que Copilot Chat ejecute una acción específica, como publicar en un panel de mensajes o actualizar un elemento de seguimiento en un sistema externo.

Acerca de la creación de GitHub Copilot Extensions

GitHub Copilot Extensions son un tipo de Copilot Extension creadas en GitHub Apps. GitHub Copilot Extensions son más adecuadas para desarrolladores que desean compatibilidad multiplataforma y administración de aplicaciones y soporte técnico de GitHub.

Clientes e IDE admitidos

Clientes e IDEAsistencia de GitHub Copilot Extensions
Visual Studio Code
Visual Studio
GitHub.com
GitHub Mobile
IDE de JetBrains
GitHub Codespaces
Vim/Neovim
Copilot in the CLI
Xcode

Acerca de la visibilidad de GitHub Copilot Extensions

GitHub Copilot Extensions puede ser público, privado y tener la capacidad de compartirse, o público y estar publicado en GitHub Marketplace. La opción de visibilidad que elija dependerá de su caso de uso y de la audiencia de destino.

  • Las extensiones privadas suelen ser las preferidas de grandes empresas o de empresas que:
    • Desean más personalización y controles sobre el acceso a datos
    • Necesitan integrar con un gran volumen de documentos y bases de datos internos
    • Tienen directivas de seguridad estrictas que dificultan la autorización de permisos para terceros
  • Las extensiones públicas son adecuadas para:
    • Proyectos de código abierto
    • El desarrollo colaborativo y uso entre organizaciones dentro de una empresa
    • Uso compartido de la herramienta y obtención de comentarios antes de publicarla en GitHub Marketplace
  • Las extensiones de GitHub Marketplace son ideales para terceros que quieran:
    • Ofrecer su servicio a un público más amplio
    • Integrar su herramienta en el flujo de trabajo del desarrollador en GitHub y el IDE
    • Aprovechar el ecosistema de GitHub para aumentar el alcance de su producto

Acerca de los conjuntos de aptitudes y los agentes

Los conjuntos de aptitudes y los agentes son las dos maneras de ampliar las capacidades de Copilot y el contexto mediante la Copilot Extensibility Platform. Permiten integrar servicios externos y API en Copilot Chat, pero cada uno atiende diferentes casos de uso y ofrece distintos niveles de control y complejidad:

  • Los conjuntos de aptitudes son ligeros y funcionales y están diseñados para desarrolladores que necesitan que Copilot lleve a cabo tareas específicas (por ejemplo, recuperación de datos u operaciones simples) con una configuración mínima. Controlan el enrutamiento, la creación de indicaciones, la evaluación de funciones y la generación de respuestas automáticamente, lo que hace que sean perfectos para integraciones rápidas y sencillas. Para obtener más información sobre los conjuntos de aptitudes, consulta Acerca de los conjuntos de aptitudes de Copilot.
  • Los agentes son para integraciones complejas que necesitan un control total sobre cómo se procesan las solicitudes y se generan respuestas. Permiten implementar lógica personalizada, integrarla con otros modelos LLM o la API de Copilot, administrar el contexto de conversación y controlar todos los aspectos de la interacción del usuario. Aunque los agentes requieren más tareas de ingeniería y mantenimiento, ofrecen máxima flexibilidad para flujos de trabajo sofisticados. Para más información sobre los agentes, consulta "Acerca de los agentes de Copilot".

Acerca del paso de contexto

Note

El paso de contexto se encuentra en versión preliminar pública y está sujeto a cambios.

Puedes permitir que la Copilot Extension reciba contexto del editor, como el archivo abierto actualmente, habilitando el nivel de acceso Read-only para el permiso "Copilot Editor Context" en la configuración de GitHub App. Consulta Creación de una aplicación de GitHub para la extensión de Copilot.

La GitHub Copilot Extensibility Platform controla automáticamente la mensajería cuando el contexto implícito y explícito no está disponible o autorizado. Para habilitar el paso de contexto, debes solicitar permisos de los usuarios. Al solicitar permisos, sigue estos procedimientos recomendados:

  • Comunica claramente qué contexto necesitas y para qué lo necesitas.
  • Implementa un control de errores adecuado para contextos no disponibles tanto en la lógica de tu propia aplicación como en las llamadas a la API.
  • En caso de que el contexto no esté disponible, proporciona valor en la medida de lo posible sin depender de estos datos.
  • Solicita solo los permisos mínimos necesarios para la extensión.

El paso de contexto respeta las exclusiones de contenido, los archivos .env y los archivos enumerados en la configuración de exclusión de contenido.

Recursos para crear GitHub Copilot Extensions

GitHub proporciona un kit de herramientas completo para generadores de extensiones, con ejemplos de código, una herramienta de depuración de la CLI, SDK de inicio rápido y un repositorio de comentarios de usuarios. Para obtener más información, consulte la organización de extensiones de Copilot en GitHub.

Antes de crear su propia GitHub Copilot Extension desde cero, es posible que desee explorar un Copilot agent existente y después integrarla con una GitHub App para ver cómo funciona. GitHub proporciona un ejemplo de Copilot agents, que puede clonar y usar como base para su propia GitHub Copilot Extension:

  • Blackbeard: un Copilot agent simple que responde a solicitudes como un pirata, usando la API del LLM Copilot y avisos especiales del sistema. Es un buen punto inicial para aprender a crear una GitHub Copilot Extension. Para obtener más información, consulte Copilot Extension de Blackbeard.

  • GitHub Models: un Copilot agent más complejo que le permite preguntar e interactuar con varios LLM enumerados en GitHub Marketplace a través de Copilot Chat. Para obtener más información, consulte GitHub Models Copilot Extension.

    Note

    GitHub Models se encuentran en versión preliminar pública y están sujetos a cambios. Para solicitar acceso, únase a la lista de espera.

  • Llamada a funciones: un agente de ejemplo escrito en Go que muestra la llamada de función y los cuadros de diálogo de confirmación. Para obtener más información, consulte Extensión de llamada a funciones.

  • Extensión de RAG: un agente de ejemplo escrito en Go que muestra una implementación sencilla de la generación aumentada de recuperación. Para obtener más información, consulte Extensión de RAG.

  • SDK en versión preliminar: un SDK que simplifica el proceso de compilación de GitHub Copilot Extensions mediante el control de la comprobación de solicitudes, el formato de respuesta y las interacciones de API. Permite a los generadores centrarse en la funcionalidad principal de su extensión en lugar de centrarse en ser reutilizable, ya que simplifica la integración de herramientas, API y orígenes de datos en Copilot Chat. Para más información, consulte SDK en versión preliminar.

Acerca de la creación de Copilot-enabled Visual Studio Code extensions

Note

La documentación de GitHub se centra en la creación de GitHub Copilot Extensions, no en Copilot-enabled Visual Studio Code extensions.

Puede crear un Copilot Extension que sea exclusivo y nativo de Visual Studio Code, denominado Copilot-enabled Visual Studio Code extensions. Esta opción es más adecuada para los desarrolladores que quieran crear extensiones que utilicen API y funciones específicas de VS Code o ampliar las extensiones de VS Code.

También conocido como extensiones de chat de VS Code, Copilot-enabled Visual Studio Code extensions funcionan de forma similar a GitHub Copilot Extensions al ampliar las funcionalidades de Copilot Chat, con algunas diferencias notables:

  • VS Code Las extensiones de chat solo se pueden usar en VS Code.
  • VS Code Las extensiones de chat tienen más acceso a las características y API de VS Code, lo que permite interacciones más específicas del editor, como el acceso a datos del área de trabajo local, la manipulación de la interfaz de Visual Studio Code y el acceso de lectura y escritura a los archivos locales.
  • VS Code Las extensiones de chat se publican en el VS Code Marketplace, no en GitHub Marketplace.
  • VS Code Las extensiones de chat son locales para el equipo del usuario y no se pueden controlar mediante una organización's de la empresa.

Para obtener más información sobre Copilot-enabled Visual Studio Code extensions, consulte Extensiones de chat en la documetación de Visual Studio Code.

Información adicional