Nota:
Agente de codificación de Copilot is in versión preliminar pública and subject to change.
Introducción
Puedes asignar una incidencia de GitHub a Copilot, como harías con un desarrollador de software humano. Copilot comenzará a trabajar en la incidencia, generará una solicitud de cambios y, cuando haya terminado de trabajar, te solicitará una revisión. Para más información, consulta Acerca de la asignación de tareas a Copilot.
Si no has usado Copilot para trabajar con una incidencia antes, puedes encontrar algunos consejos útiles para obtener buenos resultados en Best practices for using Copilot to work on tasks.
Asignación de una incidencia a Copilot
Puedes pedirle a Copilot que empiece a trabajar en una incidencia si la asignas a Copilot.
Puedes asignar una incidencia a Copilot:
- En GitHub.com (consulta la sección siguiente)
- En GitHub Mobile
- Mediante la API GitHub (consulta más adelante en este artículo)
- Mediante GitHub CLI (consulta
gh issue edit
)
Asignación de una incidencia a Copilot en GitHub.com
Puedes asignar una incidencia a Copilot en GitHub.com de la misma forma que la asignarías a otro usuario.
-
En GitHub, navegue hasta la página principal del repositorio.
-
Debajo del nombre del repositorio, haga clic en Problemas.
-
Abre la incidencia que quieras asignar a Copilot.
-
En el menú de la derecha, haga clic en Assignees.
-
Haz clic en Copilot desde la lista de usuarios asignados.
Sugerencia
Al asignar una incidencia a Copilot, se le envía el título de la incidencia, la descripción y los comentarios que existan actualmente. Después de asignar la incidencia, Copilot no conocerá y, por tanto, no reaccionará a ningún comentario adicional que se agregue a la incidencia. Si tienes más información o cambios en el requisito original, agrégalos como comentarios en la solicitud de cambios que genera Copilot.
También puedes asignar incidencias a Copilot desde otros lugares del GitHub.com:
- Desde la lista de incidencias de la página Issues de un repositorio.
- Al ver una incidencia en GitHub Proyectos.
Asignación de una incidencia a Copilot mediante la API GitHub
Puedes asignar una incidencia a Copilot si realizas una solicitud a GraphQL API.
-
Asegúrate de que te autenticas con una API mediante un token de usuario, por ejemplo personal access token o un token de usuario a servidor de GitHub App.
-
Para verificar que Agente de codificación de Copilot está habilitado en el repositorio, comprueba si
suggestedActors
del repositorio en GraphQL API incluye Copilot. Reemplazamonalisa
por el propietario del repositorio yoctocat
por el nombre.GraphQL query { repository(owner: "monalisa", name: "octocat") { suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) { nodes { login __typename ... on Bot { id } ... on User { id } } } } }
query { repository(owner: "monalisa", name: "octocat") { suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) { nodes { login __typename ... on Bot { id } ... on User { id } } } } }
Si Agente de codificación de Copilot está habilitado para el usuario y en el repositorio, el primer nodo devuelto de la consulta tendrá el valor
login
copilot-swe-agent
. -
Captura el identificador global de GraphQL de la incidencia que se va a asignar a Copilot y reemplaza
monalisa
por el propietario del repositorio,octocat
por el nombre y9000
por el número de la incidencia.GraphQL query { repository(owner: "monalisa", name: "octocat") { issue(number: 9000) { id title } } }
query { repository(owner: "monalisa", name: "octocat") { issue(number: 9000) { id title } } }
-
Asignar la incidencia a Copilot mediante la mutación de GraphQL
replaceActorsForAssignable
. ReemplazaISSUE_ID
por el id. devuelto del paso anterior yBOT_ID
por el id. devuelto por el paso anterior a ese.GraphQL mutation { replaceActorsForAssignable(input: {assignableId: "ISSUE_ID", assigneeIds: ["BOT_ID"]}) { assignable { ... on Issue { id title assignees(first: 10) { nodes { login } } } } } }
mutation { replaceActorsForAssignable(input: {assignableId: "ISSUE_ID", assigneeIds: ["BOT_ID"]}) { assignable { ... on Issue { id title assignees(first: 10) { nodes { login } } } } } }
Seguimiento del progreso de Copilot en la incidencia
Después de asignar una incidencia a Copilot, Copilot dejará una reacción 👀 a la incidencia.
Unos segundos después, Copilot abrirá una solicitud de cambios de borrador vinculada a la incidencia original. Aparecerá un evento en la escala de tiempo de la incidencia y se vinculará a la solicitud de cambios.
Copilot iniciará una sesión del agente para trabajar en la incidencia. Aparecerá un evento "Copilot started work" en la escala de tiempo de la solicitud de cambios y, mientras Copilot trabaja, actualizará el cuerpo de la solicitud de cambios con actualizaciones de estado normales e insertará confirmaciones en la rama.
Si quieres comprobar lo que hace Copilot, haz clic en View session. Se muestra el visor de registros de sesión, con un registro en directo mientras Copilot trabaja en la incidencia. Si quieres impedir que Copilot trabaje en la incidencia, haz clic en top session. Consulta Uso de los registros del agente de codificación de Copilot.
Una vez que Copilot haya terminado, la sesión del agente finalizará y Copilot solicitará una revisión por tu parte y desencadenará una notificación. Además, aparecerá un evento "Copilot finished work" en la escala de tiempo de la solicitud de cambios.
Trabajar con Copilot en una solicitud de cambios
Después de que Copilot haya terminado de trabajar en la incidencia, debes revisar exhaustivamente la solicitud de cambios y comentar todo lo que se necesite cambiar. Consulta Revisión de una solicitud de incorporación de cambios creada por Copilot.