Skip to main content

Adición de habilidades de agente para GitHub Copilot

Puede modificar el comportamiento y las capacidades de Copilot cuando realiza tareas específicas.

Nota:

Las aptitudes del agente funcionan con agente en la nube de Copilot, el CLI de GitHub Copilot, y el modo de agente en Visual Studio Code.

Las habilidades del agente son carpetas de instrucciones, scripts y recursos que Copilot se pueden cargar cuando sea pertinente para mejorar el rendimiento en tareas especializadas. Para obtener más información, vea Acerca de las aptitudes del agente.

Creación y adición de una aptitud

Para crear una habilidad de agente, escriba un archivo SKILL.md y, opcionalmente, otros recursos, como archivos Markdown complementarios o scripts, a los que se hace referencia en las instrucciones de SKILL.md.

  1. Si aún no lo ha hecho, cree un skills directorio en una de las siguientes ubicaciones. Aquí es donde encuentra su habilidad y cualquier otra que quiera crear en el futuro.

    Para aptitudes de proyecto específicas de un único repositorio, cree un directorio en .github/skills, .claude/skills o .agents/skills en el repositorio.

    Para las aptitudes personales compartidas entre proyectos, cree un ~/.copilot/skills, ~/.claude/skills, o ~/.agents/skills directorio en su directorio de inicio local.

  2. En el skills directorio, cree un subdirectorio para la nueva aptitud. Cada aptitud debe tener su propio directorio (por ejemplo, .github/skills/webapp-testing).

    Los nombres de subdirectorio de aptitudes deben estar en minúsculas y usar guiones en lugar de espacios.

  3. En el subdirectorio de aptitudes, cree un SKILL.md archivo que contenga las instrucciones de la aptitud.

    Importante

    Los archivos de habilidades deben llamarse SKILL.md.

           `SKILL.md` los archivos son archivos Markdown con texto preliminar en YAML. En su forma más sencilla, incluyen:
    
    • Texto preliminar de YAML
      • name (obligatorio): un identificador único para la aptitud. Debe estar en minúsculas, usando guiones en lugar de espacios. Normalmente, coincide con el nombre del directorio de la aptitud.
      • description (obligatorio): una descripción de lo que hace la aptitud y cuándo Copilot debe usarlo.
      • license (opcional): una descripción de la licencia que se aplica a esta aptitud.
    • Un cuerpo de Markdown, con las instrucciones, ejemplos y pautas que Copilot debe seguir.
  4. Opcionalmente, añade scripts, ejemplos u otros recursos al directorio de la habilidad.

    Para obtener más información, consulte "Habilitación de una aptitud para ejecutar un script".

Archivo SKILL.md de ejemplo

Para una habilidad de proyecto, este archivo estaría ubicado en un .github/skills/github-actions-failure-debugging directorio de tu repositorio.

Para una habilidad personal, este archivo estaría ubicado en un ~/.copilot/skills/github-actions-failure-debugging directorio.

Markdown
---
name: github-actions-failure-debugging
description: Guide for debugging failing GitHub Actions workflows. Use this when asked to debug failing GitHub Actions workflows.
---

To debug failing GitHub Actions workflows in a pull request, follow this process, using tools provided from the GitHub MCP Server:

1. Use the `list_workflow_runs` tool to look up recent workflow runs for the pull request and their status
2. Use the `summarize_job_log_failures` tool to get an AI summary of the logs for failed jobs, to understand what went wrong without filling your context windows with thousands of lines of logs
3. If you still need more information, use the `get_job_logs` or `get_workflow_run_logs` tool to get the full, detailed failure logs
4. Try to reproduce the failure yourself in your own environment.
5. Fix the failing build. If you were able to reproduce the failure yourself, make sure it is fixed before committing your changes.

Habilitación de una aptitud para ejecutar un script

Cuando se invoca una aptitud, Copilot detecta automáticamente todos los archivos del directorio de la aptitud y los pone a disposición junto con las instrucciones de la aptitud. Esto significa que puede incluir scripts u otros recursos en el directorio de aptitudes y hacer referencia a ellos en las SKILL.md instrucciones.

Para crear una aptitud que ejecute un script:

  1.        **Agrega el script al directorio de la habilidad.** Por ejemplo, una aptitud para convertir imágenes SVG en PNG podría tener la estructura siguiente.
    
    .github/skills/image-convert/
    ├── SKILL.md
    └── convert-svg-to-png.sh
    
  2.        **Opcionalmente, apruebe previamente las herramientas que necesita la aptitud.** En el texto preliminar de `SKILL.md`, puede utilizar el campo `allowed-tools` para enumerar las herramientas que Copilot puede utilizar sin pedir confirmación cada vez. Si una herramienta no aparece en el `allowed-tools` campo , Copilot le solicitará permiso antes de usarlo.
    
    ---
    name: image-convert
    description: Converts SVG images to PNG format. Use when asked to convert SVG files.
    allowed-tools: shell
    ---
    

    Advertencia

    Solo apruebe previamente las herramientas shell o bash si ha revisado esta habilidad y los scripts a los que se hace referencia, y confíe completamente en su origen. La aprobación previa de shell o bash elimina el paso de confirmación para ejecutar comandos de terminal y puede permitir que habilidades controladas por el atacante o inyecciones en solicitudes ejecuten comandos arbitrarios en su entorno. En caso de duda, omita shell y bash de allowed-tools para que Copilot deba solicitar la confirmación explícita antes de ejecutar comandos de terminal.

  3.        **Escriba instrucciones que indiquen Copilot cómo usar el script.** En el cuerpo de Markdown de `SKILL.md`, describe cuándo y cómo ejecutar el script.
    
    When asked to convert an SVG to PNG, run the `convert-svg-to-png.sh` script
    from this skill's base directory, passing the input SVG file path as the
    first argument.
    

Añadir una habilidad que otra persona ha creado

Además de crear sus propias aptitudes, también puede agregar aptitudes que otras personas hayan creado.

Sugerencia

También puede usar gh skill en GitHub CLI para buscar, instalar, actualizar y publicar aptitudes del agente. Para obtener más información, vea Adición de habilidades de agente para GitHub Copilot.

  1. Descargue un directorio de aptitudes (es decir, un directorio que contenga un archivo SKILL.md y, opcionalmente, otros archivos y subdirectorios).

    Por ejemplo, descargue una habilidad del repositorio Awesome GitHub Copilot: https://awesome-copilot.github.com/skills/.

  2. Si descargó un .zip archivo, descomprímalo.

  3. Mueva el directorio de aptitudes a la ubicación necesaria:

    • Para las habilidades del proyecto, específicas de un único repositorio: .github/skills, .claude/skills o .agents/skills en tu repositorio.

    • Para aptitudes personales, compartidas entre proyectos: ~/.copilot/skills, ~/.claude/skillso ~/.agents/skills en el directorio principal local.

Administración de habilidades con GitHub CLI

Nota:

          `gh skill` está en versión preliminar pública y está sujeto a cambios. Para usarlo, actualice GitHub CLI a la versión 2.90.0 o posterior.

Puede usar el gh skill comando en GitHub CLI para detectar, instalar, actualizar y publicar habilidades de los agentes desde GitHub repositorios.

Para obtener la lista completa de gh skill subcomandos, ejecute gh skill --help o vea la gh skill sección del GitHub CLI manual.

Instalando habilidades

Puede buscar habilidades, obtener una vista previa de ellas e instalarlas desde GitHub repositorios.

Advertencia

Las aptitudes no se comprueban mediante GitHub y pueden contener inyecciones de mensajes, instrucciones ocultas o scripts malintencionados. Inspeccione siempre el contenido de una habilidad antes de instalarla mediante gh skill preview.

  1. Busque aptitudes por tema:

    gh skill search TOPIC
    
  2. Previsualice una habilidad para inspeccionar su contenido antes de instalar. Esto muestra la habilidad SKILL.md y el árbol de archivos en tu terminal sin instalar nada.

    gh skill preview OWNER/REPOSITORY SKILL
    
  3. Instale una habilidad. Puede ejecutar gh skill install sin argumentos para un flujo totalmente interactivo o especificar un repositorio para examinar sus aptitudes de forma interactiva:

    gh skill install OWNER/REPOSITORY
    

    Para instalar una aptitud específica directamente:

    gh skill install OWNER/REPOSITORY SKILL
    

    Por ejemplo, para instalar una habilidad desde el github/awesome-copilot repositorio:

    Shell
    gh skill install github/awesome-copilot documentation-writer
    

    Puede instalar una versión específica mediante @TAG o @SHA:

    Shell
    gh skill install github/awesome-copilot documentation-writer@v1.2.0
    

    Para bloquear una habilidad a una versión específica (o commit SHA) para que se salte durante las actualizaciones, use --pin:

    Shell
    gh skill install github/awesome-copilot documentation-writer --pin v1.2.0
    

    Nota:

    La @VERSION sintaxis y --pin marca son mutuamente excluyentes. Use uno u otro, no ambos.

    Para instalar una habilidad para un host de agente específico, use la opción --agent. Para controlar el ámbito de instalación, use --scope:

    Shell
    gh skill install github/awesome-copilot documentation-writer --agent claude-code --scope user
    

Las habilidades se instalan automáticamente en el directorio correcto para el host del agente. De forma predeterminada, las habilidades se instalan para Copilot en el ámbito del proyecto.

Actualización de aptitudes

Al instalar una habilidad con gh skill, los metadatos de procedencia se escriben en el frontmatter de la habilidad en SKILL.md, incluido el repositorio de origen, la referencia y el SHA del árbol. El gh skill update comando usa estos metadatos para comprobar si hay cambios ascendentes.

Para comprobar si hay actualizaciones de forma interactiva:

gh skill update

Para actualizar una aptitud específica:

gh skill update SKILL

Para actualizar todas las habilidades instaladas sin solicitar confirmación:

gh skill update --all

Las habilidades fijadas se omiten durante las actualizaciones. Para actualizar una habilidad anclada, reinstálela con un nuevo valor --pin.

Aptitudes de publicación

Si mantiene un repositorio de aptitudes, puede validar y publicar sus aptitudes mediante GitHub CLI.

Para validar sus habilidades con la especificación de habilidades del agente y comprobar la configuración remota, como la protección de etiquetas, el escaneo de secretos y el análisis de código, sin publicar, use --dry-run:

gh skill publish --dry-run

Para corregir automáticamente los problemas de metadatos en los archivos de habilidades, use --fix. Esto no publica sus aptitudes:

gh skill publish --fix

Para validar y publicar sus aptitudes:

gh skill publish

Cómo Copilot usa las aptitudes del agente

Al realizar tareas, Copilot decidirá cuándo usar sus habilidades en función de su solicitud y la descripción de la habilidad.

Cuando Copilot elige usar una aptitud, el archivo SKILL.md se insertará en el contexto del agente, lo que le proporcionará acceso a las instrucciones. Después, puede seguir esas instrucciones y usar los scripts o ejemplos que hayas incluido en el directorio de la habilidad.

Aptitudes frente a instrucciones personalizadas

Puede usar habilidades e instrucciones personalizadas para enseñar a Copilot cómo trabajar en su repositorio y cómo realizar tareas específicas.

Se recomienda usar instrucciones personalizadas para obtener instrucciones sencillas relevantes para casi todas las tareas (por ejemplo, información sobre los estándares de codificación del repositorio) y aptitudes para obtener instrucciones más detalladas que Copilot solo deben tener acceso cuando proceda.

Para más información sobre las instrucciones personalizadas del repositorio, consulte Agregar instrucciones personalizadas del repositorio para GitHub Copilot.