Skip to main content

Adición de instrucciones personalizadas para CLI de GitHub Copilot

Proporcione a Copilot contexto adicional sobre cómo comprender su proyecto y cómo desarrollar, probar y validar sus cambios.

GitHub Copilot puede proporcionar respuestas adaptadas a sus preferencias personales, la forma en que trabaja el equipo, las herramientas que usa o los detalles de su proyecto, si proporciona suficiente contexto para hacerlo. En lugar de agregar repetidamente este detalle contextual a las indicaciones, puede crear instrucciones personalizadas que agreguen automáticamente esta información. La información adicional no se muestra, pero está disponible para Copilot para permitir que genere respuestas de mayor calidad.

Tipos de instrucciones personalizadas

CLI de GitHub Copilot admite los siguientes tipos de instrucciones personalizadas.

Instrucciones personalizadas para todo el repositorio

Se aplican a todas las solicitudes realizadas en el contexto de un repositorio.

Estos se especifican en un archivo copilot-instructions.md en el directorio .github en la raíz del repositorio. Consulta Creación de instrucciones personalizadas para todo el repositorio.

Instrucciones específicas de ruta personalizadas

Se aplican a las solicitudes realizadas en el contexto de los archivos que coinciden con una ruta de acceso especificada.

Estos se especifican en uno o más archivos NAME.instructions.md dentro o debajo del directorio .github/instructions en la raíz del repositorio, o dentro o abajo de un directorio .github/instructions en el directorio de trabajo actual. Consulta Crear instrucciones personalizadas específicas de la ruta.

Si la ruta de acceso especificada en estas instrucciones coincide con un archivo en el que Copilot está trabajando y también existe un archivo de instrucciones personalizado para todo el repositorio, se usan las instrucciones de ambos archivos. Debe evitar posibles conflictos entre instrucciones ya que la elección de Copilot entre instrucciones en conflicto es no determinista.

Instrucciones para el agente

Estos son utilizados por varios agentes de inteligencia artificial.

Puede crear uno o varios AGENTS.md archivos. Se pueden ubicar en el directorio raíz del repositorio, en el directorio de trabajo actual o en cualquiera de los directorios especificados por una lista separada por comas de rutas de acceso en la COPILOT_CUSTOM_INSTRUCTIONS_DIRS variable de entorno.

Las instrucciones del AGENTS.md archivo del directorio raíz, si se encuentran, se tratan como instrucciones principales. Si un archivo /> <c1 se encuentran en la raíz del repositorio, se usan las instrucciones de ambos archivos.

Las instrucciones que se encuentran en otros AGENTS.md archivos se tratan como instrucciones adicionales. Es probable que las instrucciones principales que se encuentren tengan más efecto en las respuestas de Copilot que las instrucciones adicionales.

Para obtener más información, consulte el repositorio agentsmd/agents.md.

Como alternativa, puede usar los CLAUDE.md archivos y GEMINI.md. Deben encontrarse en la raíz del repositorio.

Instrucciones locales

Se aplican dentro de un entorno local específico.

Puede especificar instrucciones en su propio directorio principal mediante la creación de un archivo en $HOME/.copilot/copilot-instructions.md.

También puede establecer la COPILOT_CUSTOM_INSTRUCTIONS_DIRS variable de entorno en una lista separada por comas de directorios. CLI de Copilot buscará un archivo AGENTS.md y cualquier archivo .github/instructions/**/*.instructions.md, en cada uno de estos directorios.

Creación de instrucciones personalizadas para todo el repositorio

  1. En la raíz del repositorio, cree un archivo denominado .github/copilot-instructions.md.

    Cree el directorio .github si aún no existe.

  2. Agrega instrucciones de lenguaje natural al archivo en formato Markdown.

    Se ignora el espacio en blanco entre las instrucciones, por lo que estas pueden escribirse como un solo párrafo, cada una en una nueva línea o separadas por líneas en blanco para mejorar la legibilidad.

    Para obtener ayuda sobre cómo escribir instrucciones personalizadas eficaces, consulte Acerca de la personalización de las respuestas de GitHub Copilot.

Creación de instrucciones personalizadas específicas de la ruta de acceso

  1. Crea el directorio .github/instructions si no existe todavía.

  2. Opcionalmente, cree subdirectorios de .github/instructions para organizar sus archivos de instrucciones.

  3. Crea uno o varios archivos NAME.instructions.md, donde NAME indica el propósito de las instrucciones. El nombre de archivo debe terminar con .instructions.md.

  4. Al principio del archivo, crea un bloque de texto preliminar que contenga la palabra clave applyTo. Usa la sintaxis global para especificar a qué archivos o directorios se aplican las instrucciones.

    Por ejemplo:

    ---
    applyTo: "app/models/**/*.rb"
    ---
    

    Puedes especificar varios patrones si los separas con comas. Por ejemplo, para aplicar las instrucciones a todos los archivos TypeScript del repositorio, podrías usar el siguiente bloque de texto preliminar:

    ---
    applyTo: "**/*.ts,**/*.tsx"
    ---
    

    Ejemplos de Glob:

    •      `*` - coincidirá con todos los archivos del directorio actual.
      
    •      `**` o `**/*` - coincidirán con todos los archivos en todos los directorios.
      
    •      `*.py` : coincidirá con todos los `.py` archivos del directorio actual.
      
    •      `**/*.py` : coincidirá recursivamente con todos los `.py` archivos de todos los directorios.
      
    •      `src/*.py` : coincidirá con todos los `.py` archivos del `src` directorio. Por ejemplo, `src/foo.py` y `src/bar.py`_pero no_`src/foo/bar.py`.
      
    •      `src/**/*.py` : coincidirá recursivamente con todos los `.py` archivos del `src` directorio. Por ejemplo, `src/foo.py`, `src/foo/bar.py` y `src/foo/bar/baz.py`.
      
    •      `**/subdir/**/*.py` : coincidirá recursivamente con todos los `.py` archivos de cualquier `subdir` directorio a cualquier profundidad. Por ejemplo, `subdir/foo.py`, `subdir/nested/bar.py`, `parent/subdir/baz.py`y `deep/parent/subdir/nested/qux.py`, pero _no_`foo.py` en una ruta de acceso que no contiene un `subdir` directorio.
      
  5. De forma opcional, para evitar que el archivo sea usado por Agente de programación Copilot o revisión de código Copilot, agregue la palabra clave excludeAgent al bloque frontmatter. Use "code-review" o "coding-agent".

    Por ejemplo, el archivo siguiente solo lo leerá Agente de programación Copilot.

    ---
    applyTo: "**"
    excludeAgent: "code-review"
    ---
    

    Si la excludeAgent palabra clave no se incluye en el bloque de front matter, tanto revisión de código Copilot como Agente de programación Copilot usarán tus instrucciones.

  6. Agrega las instrucciones personalizadas en lenguaje natural mediante el formato Markdown. Se ignora el espacio en blanco entre las instrucciones, por lo que estas pueden escribirse como un solo párrafo, cada una en una nueva línea o separadas por líneas en blanco para mejorar la legibilidad.

¿Has agregado correctamente un archivo de instrucciones personalizado al repositorio?

          <a href="https://docs.github.io/success-test/yes.html" target="_blank" class="btn btn-outline mt-3 mr-3 no-underline">
          <span>Sí</span></a><a href="https://docs.github.io/success-test/no.html" target="_blank" class="btn btn-outline mt-3 mr-3 no-underline"><span>No</span></a>

Instrucciones personalizadas en uso

Las instrucciones de los archivos están disponibles para su uso por Copilot tan pronto como guarde el/los archivo(s). Las instrucciones se agregan automáticamente a las solicitudes que envíe a Copilot.

Si realiza cambios en las instrucciones personalizadas durante una sesión de CLI, los cambios podrán usarse por Copilot la próxima vez que envíe una solicitud en las sesiones actuales o futuras.

Lectura adicional

  •         [AUTOTITLE](/copilot/reference/custom-instructions-support)
    
  •         [AUTOTITLE](/copilot/tutorials/customization-library/custom-instructions): una colección seleccionada de ejemplos
    
  •         [AUTOTITLE](/copilot/tutorials/use-custom-instructions)