Nota:
Para obtener una introducción a Agente de programación Copilot, consulta Acerca del agente de codificación de GitHub Copilot.
Introducción
El desarrollo moderno a menudo comienza con buenas intenciones: un script rápido, un prototipo, quizás una acción para automatizar una pequeña cosa. Pero a medida que evolucionan los proyectos, esos primeros esfuerzos pueden ser frágiles.
En este tutorial se muestra cómo puede usar Agente de programación Copilot para mejorar un proyecto maduro, sin perder ritmo.
En las secciones siguientes, haremos lo siguiente:
- Asegúrese de que el proyecto contiene instrucciones personalizadas que Copilot pueda usar para adaptar sus respuestas al proyecto.
- Asegúrese de que hay un archivo de configuración de entorno para Agente de programación Copilot, de modo que pueda comenzar con las tareas más rápidamente pre-instalando las dependencias de su proyecto.
- Obtenga Copilot para buscar mejoras que se podrían realizar en el código y, a continuación, crear incidencias para esta tarea.
- Delegue el trabajo de codificación en Copilot asignándoselo a una incidencia.
Comprobar las instrucciones personalizadas
-
Vaya al repositorio en GitHub.
-
Compruebe que existe al menos uno de los siguientes archivos de instrucciones personalizadas:
.github/copilot-instructions.md.github/instructions/**/*-instructions.mdAGENTS.md
-
Si existe alguno de estos archivos, vea el archivo y compruebe que las instrucciones son adecuadas y actualizadas.
Para obtener más información, vea la sección "Escribir instrucciones personalizadas eficaces" en Acerca de la personalización de las respuestas de GitHub Copilot y la biblioteca de ejemplos en Instrucciones personalizadas.
-
Si no hay archivos de instrucciones personalizados en el repositorio, use Agente de programación Copilot para crear un archivo
.github/copilot-instructions.md, siguiendo las instrucciones de Agregar instrucciones personalizadas del repositorio para GitHub Copilot. -
Revise la solicitud de incorporación de cambios que Agente de programación Copilot crea. Compruebe que el archivo
.github/copilot-instructions.mdproporciona Copilot con toda la información que necesita para trabajar en este proyecto.El archivo debe incluir:
- Un resumen claro del código base y lo que hace el software.
- Una visión general de la estructura del proyecto.
- Directrices de contribución. Por ejemplo, cómo compilar, dar formato, aplicar lint y probar el código base y los requisitos que se deben cumplir antes de que se puedan combinar las solicitudes de incorporación de cambios.
- Principios técnicos clave.
-
Edite el archivo según sea necesario.
-
Haga clic en Listo para su revisión en la parte inferior de la pestaña "Conversación" de la solicitud de incorporación de cambios y, a continuación, complete el proceso habitual para combinar una solicitud de incorporación de cambios.
2. Comprobación de un archivo de configuración del entorno
Un archivo de flujo de trabajo copilot-setup-steps.yml de GitHub Actions puede ayudar a Agente de programación Copilot a comenzar con las tareas más rápidamente al preinstalar las dependencias utilizadas por el proyecto.
La creación de este archivo es opcional, pero es una buena idea si usa Agente de programación Copilot regularmente en el repositorio.
-
En el repositorio de GitHub, compruebe que existe el siguiente archivo:
Text .github/workflows/copilot-setup-steps.yml
.github/workflows/copilot-setup-steps.ymlSugerencia
Una manera rápida de hacer esto es copiar la ruta anterior, ir a la página principal del repositorio y pegar la ruta en el campo "Ir al archivo".
-
Si el archivo existe, ábrelo y comprueba que los pasos del flujo de trabajo instalan las dependencias correctas para el proyecto. Después de comprobarlo, puede omitir los pasos restantes de esta sección.
-
Si aún no tiene un
copilot-setup-steps.ymlarchivo, siga estos pasos para obtener Agente de programación Copilot para crearlo automáticamente. -
En la parte superior de cualquier página de su repositorio, en el sitio web de GitHub, haga clic en .
-
Copie y pegue la siguiente solicitud en el cuadro de diálogo de Agentes:
Text Analyze this repository to understand the dependencies that need to be installed on the development environment to work on the code in this repository. Using this information, and the details about the `copilot-setup-steps.yml` file that are given in https://docs.github.com/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment, add a `.github/workflows/copilot-setup-steps.yml` to this repository. This Actions workflow file should install, in the development environment for Agente de programación Copilot, all of the dependencies necessary to work on the code in this repository. Make sure that the workflow job is named `copilot-setup-steps`.
Analyze this repository to understand the dependencies that need to be installed on the development environment to work on the code in this repository. Using this information, and the details about the `copilot-setup-steps.yml` file that are given in https://docs.github.com/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment, add a `.github/workflows/copilot-setup-steps.yml` to this repository. This Actions workflow file should install, in the development environment for Agente de programación Copilot, all of the dependencies necessary to work on the code in this repository. Make sure that the workflow job is named `copilot-setup-steps`. -
Haga clic en o presione Enter.
-
En la lista "Sesiones recientes del agente", haga clic en la nueva sesión del agente que se ha iniciado.
Esto muestra un registro de actividad, mientras Copilot realiza la tarea. Cuando Copilot finaliza, generará un resumen de lo que hizo.
-
Lea el resumen y haga clic en Ver pull request.
-
También puede añadir Copilot como revisor. Para más información, consulta Uso de la revisión de código de GitHub Copilot. Espere a que Copilot agregue comentarios de revisión y luego realice los cambios que considere necesarios en respuesta a los comentarios.
-
Revise la solicitud de incorporación de cambios, asegurándose de que los pasos de configuración del nuevo archivo
copilot-setup-steps.ymlson correctos.El archivo de flujo de trabajo que Copilot ha creado debe incluir un
on: workflow_dispatchdesencadenador, para permitirle ejecutar el flujo de trabajo manualmente y el trabajo debe denominarsecopilot-setup-stepscomo se muestra en este extracto:on: workflow_dispatch: push: paths: - .github/workflows/copilot-setup-steps.yml pull_request: paths: - .github/workflows/copilot-setup-steps.yml jobs: copilot-setup-steps: runs-on: ubuntu-latest -
Realice los cambios necesarios en el
copilot-setup-steps.ymlarchivo en la solicitud de incorporación de cambios.Puede pedir a Copilot que realice cambios con
@copiloten un comentario de revisión. Por ejemplo:@copilot - comment the file more thoroughly -
Haga clic en Listo para su revisión en la parte inferior de la pestaña "Conversación" de la solicitud de incorporación de cambios y, a continuación, complete el proceso habitual para combinar una solicitud de incorporación de cambios.
-
Abra el archivo
.github/workflows/copilot-setup-steps.ymlrecién agregado en su repositorio en GitHub. -
Haga clic en Ver ejecuciones cerca de la parte superior derecha de la página.
-
Haga clic en Ejecutar flujo de trabajo y, a continuación, en Ejecutar flujo de trabajo en el cuadro de diálogo, para probar el nuevo flujo de trabajo.
-
Compruebe que el flujo de trabajo se ejecuta correctamente e instala las dependencias. Corrija los errores editando el archivo
.github/workflows/copilot-setup-steps.yml.
3. Deje que Copilot encuentre deuda técnica
Ahora que Copilot tiene el contexto adecuado y (opcionalmente) un entorno listo para su uso, puede utilizarlo para identificar y priorizar la deuda técnica en su repositorio.
-
Haga clic en el botón en el cuadro de mensaje siguiente para enviar este mensaje a chat de Copilot en GitHub.com.
Copilot prompt What technical debt exists in this project? Give me a prioritized list of up to 5 areas we need to focus on. For each, describe the problem and its consequences.
What technical debt exists in this project? Give me a prioritized list of up to 5 areas we need to focus on. For each, describe the problem and its consequences.
What technical debt exists in this project? Give me a prioritized list of up to 5 areas we need to focus on. For each, describe the problem and its consequences. -
Asegúrese de que el modo ** Preguntar a ** esté seleccionado.
-
Utiliza el desplegable Todos los repositorios para seleccionar tu repositorio.
-
Haga clic en o presione Enter.
-
Revise los detalles de la respuesta de Copilot.
-
Suponiendo que Copilot identificó al menos un área para mejorar, copie el siguiente texto en la misma conversación.
Copilot prompt /create-issue Create a GitHub issue to address the first of the problem areas that you identified. If the problem area requires substantial work, create one main issue for the entire problem area and then sub-issues that allow the work to be split up into manageable chunks, which will be tackled in separate pull requests that can be easily reviewed. For a large body of work, do not create a single issue that attempts to address the entire problem. The issue, or each sub-issue if these are created, must include a description of the problem, a set of acceptance criteria, and pointers on what files need to be added/updated.
/create-issue Create a GitHub issue to address the first of the problem areas that you identified. If the problem area requires substantial work, create one main issue for the entire problem area and then sub-issues that allow the work to be split up into manageable chunks, which will be tackled in separate pull requests that can be easily reviewed. For a large body of work, do not create a single issue that attempts to address the entire problem. The issue, or each sub-issue if these are created, must include a description of the problem, a set of acceptance criteria, and pointers on what files need to be added/updated. -
Edite este mensaje según sea necesario. Por ejemplo, dependiendo de la respuesta que Copilot produjo, quizás quiera trabajar en otra de las áreas problemáticas que Copilot identificó, en lugar de la primera.
-
Asegúrese de que el modo Preguntar todavía está seleccionado ().
-
Haga clic en o presione Enter.
-
Revise el borrador que Copilot genera, editándolo según sea necesario.
-
Si Copilot crea un borrador de problema único que indica que se deben crear subproblemas, debe solicitar que Copilot lo haga automáticamente:
Copilot prompt Go ahead and create sub-issues that chunk this work into manageable pieces.
Go ahead and create sub-issues that chunk this work into manageable pieces. -
Haga clic en Crear o Revisar y crear, dependiendo de cuántas incidencias se hayan creado.
Copilot crea una o más incidencias nuevas en su nombre. Se le mostrará como autor de la incidencia.
4. Obtén Copilot para corregir un problema
Ahora que ha creado las incidencias, el siguiente paso es delegar una incidencia a Copilot y revisar la solicitud de incorporación de cambios resultante.
-
Abra una de las incidencias que Copilot creó en la sección anterior.
-
Compruebe que el problema contiene criterios de aceptación que Copilot puede usar para comprobar que ha completado la tarea.
-
Realice los cambios que sienta necesarios para describir con precisión el problema que debe corregirse y el resultado esperado del trabajo sobre este problema.
-
Haga clic en Asignar a Copilot.
-
En "Asignar Copilot a incidencia", haga clic en Asignar.
Copilot comenzará a trabajar en el problema. Después de unos instantes, se agregará a la incidencia un vínculo a un borrador de solicitud de incorporación de cambios.
-
Haga clic en el vínculo al borrador de la solicitud de incorporación de cambios.
Una vez que Copilot ha terminado de trabajar en la solicitud de incorporación de cambios, quitará "[WIP]" del título de la solicitud de incorporación de cambios y lo agregará como revisor.
Puede dejar que Copilot trabaje en la solicitud de incorporación de cambios de forma asincrónica y volver a revisar la solicitud de incorporación de cambios una vez que se le agregue como revisor.
-
De manera opcional, después de que Copilot haya estado trabajando durante un par de minutos, puede hacer clic en Ver sesión en la solicitud de incorporación de cambios para ver un registro de lo que Copilot está haciendo.
-
Opcionalmente, en la pestaña "Conversación" de la solicitud de incorporación de cambios, añada Copilot como revisor.
-
Una vez que se haya agregado como revisor, revise los cambios usted mismo y realice los cambios necesarios.
Puede pedir a Copilot que realice cambios con
@copiloten un comentario de revisión. -
Haga clic en Listo para su revisión en la parte inferior de la pestaña "Conversación" de la solicitud de incorporación de cambios y, a continuación, complete el proceso habitual para combinar una solicitud de incorporación de cambios.
5. Iteración en este proceso
- Si Copilot creó varios problemas, repita la sección 4 y asigne Copilot a uno de los otros problemas.
- Después de cerrar todas las incidencias que Copilot creó, repita la sección 3, elija otra área problemática e itere en la sección 4 para asignar incidencias a Copilot y revise y fusione sus cambios.
Conclusión
Agente de programación Copilot puede ayudarle a mejorar la calidad del código en cualquier proyecto, pero es especialmente útil para reducir la deuda técnica en un proyecto que ha crecido orgánicamente a lo largo de muchos meses o años. Al utilizar Agente de programación Copilot, puede realizar mejoras para las que le habría costado encontrar tiempo sin un asistente de IA trabajando en su nombre.
Copilot no lo reemplaza como desarrollador; todavía debe participar en cada paso de este proceso, especificando lo que desea que Copilot haga y revisar cuidadosamente el código que cambia o agrega, pero le permite implementar mejoras al mismo tiempo que trabaja en otras tareas importantes.
Pasos siguientes
Lea este caso práctico en el blog de GitHub: Cómo el equipo de facturación de GitHub utiliza el agente de codificación en GitHub Copilot para reducir continuamente la deuda técnica.