GitHub Copilot: Buenas prácticas

Cómo ganar velocidad sin perder calidad

Copilot es rápido. Tu bucle de retroalimentación debe ser más rápido.

GitHub Copilot puede escribir mucho código rápidamente. Esa no es la parte difícil.

La parte difícil es mantener tus estándares intactos mientras sube el volumen: tests, seguridad, claridad y cambios pequeños que realmente puedas revisar.

Esta página reúne prácticas simples que hacen que Copilot sea útil, no peligroso.

Nota: Las funciones de Copilot, los modelos y los flujos de trabajo con agentes cambian rápido. Trata estas prácticas como guía actual, no como un contrato permanente.


30 minutos. Sin discurso de ventas. Solo una conversación franca sobre lo que frena a tu equipo.

Empecemos a trabajar juntos

Las prácticas que realmente funcionan

1) Dale un contrato, no una vibra

Copilot funciona mejor cuando especificas qué significa “listo”.

Usa un contrato corto en el prompt:

Objetivo:
-

Restricciones:
- Mantener cambios pequeños y enfocados
- No añadir dependencias nuevas salvo que sea necesario
- No cambiar APIs públicas

Criterios de aceptación:
- Añadir o actualizar tests
- Explicar cómo ejecutar los tests
- Señalar casos límite y modos de fallo

Contexto:
- Archivos relevantes:
- Comportamiento actual:
- Comportamiento esperado:

Si no puedes describir los criterios de aceptación, Copilot no puede adivinarlos por ti.

2) Aliméntalo con realidad: código, errores y límites

Copilot adivina cuando le das un problema vago. Dale entradas concretas:

  • La salida de un test fallido, un stack trace, o un fragmento de logs
  • El archivo y la función exacta que quieres cambiar
  • Las restricciones que importan (rendimiento, compatibilidad, thread safety, compatibilidad hacia atrás)

Luego pídele que proponga el cambio más pequeño y seguro.

3) Trabaja a propósito con diffs pequeños

Los cambios grandes generados por IA esconden problemas. Mantén los diffs revisables.

  • Pide un solo cambio a la vez
  • Solicita un plan breve paso a paso antes de editar
  • Prefiere un archivo por cambio cuando sea posible
  • Haz que se detenga después del primer incremento que funcione

Los diffs pequeños son un multiplicador porque puedes revisarlos y probarlos rápido.

4) Trata los tests como el volante

Copilot puede inventar código que compila y aun así falla en producción.

Empújalo hacia un flujo test-first:

  • Pídele que escriba un test que falle y capture el bug
  • Ejecuta el test y confirma que falla por la razón correcta
  • Solo entonces acepta el fix

Si el código es difícil de probar, eso es una señal. Usa Copilot para abrir una “seam” de testeo, no para añadir más complejidad.

5) Haz que Copilot haga trabajo de revisión, no solo que escriba código

Buenos prompts para revisar:

  • “Explica en un párrafo qué cambia este diff.”
  • “Enumera los tres riesgos principales y cómo mitigarlos.”
  • “¿Qué casos límite romperán esto?”
  • “Sugiere tests que habrían evitado una regresión aquí.”

Tú sigues siendo responsable del juicio. Copilot solo reduce el costo de hacer las preguntas.

6) Por defecto, comportamiento seguro

Copilot no puede saber qué es secreto en tu entorno.

  • Nunca pegues tokens, claves privadas o datos de clientes
  • Prefiere placeholders cuando compartas configuración
  • Pide patrones que carguen secretos desde variables de entorno o secret stores
  • Revisa dependencias con cuidado antes de añadirlas

Si no lo pegarías en un issue público, no lo pegues en un prompt.


Copilot en VS Code: Sabe qué instalaste

Si usas Copilot en Visual Studio Code, normalmente usas dos extensiones separadas:

  • GitHub Copilot: sugerencias inline mientras escribes (ghost text) y Next Edit Suggestions (NES)
  • GitHub Copilot Chat: chat, ediciones en múltiples archivos y flujos de agentes/plan

La implicación práctica: sugerencias inline y chat están relacionadas, pero no son el mismo conjunto de funciones y no siempre comparten la misma configuración.

Mantén VS Code y Copilot Chat al día

Copilot Chat se publica en lockstep con VS Code. Las versiones más nuevas de Copilot Chat suelen ser compatibles solo con la última versión de VS Code.

Si el chat desaparece o deja de funcionar, actualizar VS Code y las extensiones suele arreglarlo.

Referencias:

  • Página de la extensión GitHub Copilot Chat: https://marketplace.visualstudio.com/items?itemName=GitHub.copilot-chat
  • Troubleshooting de GitHub Copilot: https://docs.github.com/en/copilot/troubleshooting-github-copilot/troubleshooting-issues-with-github-copilot-chat

Elige la superficie correcta para el trabajo

VS Code expone varias “superficies” de Copilot que se alinean con distintos tipos de trabajo:

  • Inline suggestions para escribir código nuevo rápidamente (ghost text y NES)
  • Ask mode para entender, explorar y revisar sin editar
  • Inline chat para un refactor pequeño y enfocado en el lugar
  • Edit mode para ediciones multi-archivo controladas en un working set definido
  • Agent mode para tareas de varios pasos donde el asistente planifica, ejecuta herramientas e itera
  • Plan mode para crear un plan primero y luego pasar a la implementación

Referencias:

  • VS Code AI core concepts: https://code.visualstudio.com/docs/copilot/core-concepts
  • GitHub Copilot features: https://docs.github.com/en/copilot/about-github-copilot/github-copilot-features

Haz consistente el comportamiento con custom instructions

Si quieres que Copilot Chat y los agentes sigan las reglas del proyecto de forma fiable, ponlas en archivos de instrucciones en lugar de repetirlas en cada prompt.

  • .github/copilot-instructions.md se aplica automáticamente a todas las solicitudes de chat en el workspace
  • AGENTS.md es otra opción always-on pensada explícitamente para trabajar con múltiples agentes
  • *.instructions.md permite acotar reglas a subconjuntos del repo vía globs

Nota: Las custom instructions no aplican a las sugerencias inline mientras escribes, así que trátalas como un control para chat y agentes.

Referencia:

  • VS Code custom instructions: https://code.visualstudio.com/docs/copilot/customization/custom-instructions

Revisa ediciones como si fueran el PR de un desarrollador junior

Cuando chat o agentes aplican ediciones, VS Code rastrea cambios pendientes y te da controles Keep/Undo por cambio, además de una salida de emergencia para “reject all”.

Dos hábitos útiles:

  • Haz stage solo después de revisar (staging acepta cambios pendientes de forma implícita)
  • Exige aprobación explícita para archivos sensibles (por ejemplo, .env y settings del workspace)

Referencia:

  • Review AI-generated code edits: https://code.visualstudio.com/docs/copilot/chat/review-code-edits

Conoce los controles de telemetría

Las extensiones de Copilot recogen datos de uso y respetan el ajuste telemetry.telemetryLevel de VS Code.

Si usas Copilot Free, la documentación de VS Code indica que la telemetría está activada por defecto y se puede desactivar con el ajuste de telemetría (y también puedes ajustar configuraciones de Copilot en GitHub).

Referencias:

  • Nota de telemetría de la extensión Copilot Chat: https://marketplace.visualstudio.com/items?itemName=GitHub.copilot-chat
  • Configurar GitHub Copilot en VS Code: https://code.visualstudio.com/docs/copilot/setup

Múltiples agentes, un repo: cómo evitar un desastre de merges

Copilot ya no es un solo asistente. En VS Code puedes ejecutar varias sesiones de chat (y varias sesiones de agentes) en paralelo, y cada sesión tiene su propia ventana de contexto.

Eso es genial para el throughput y terrible si dejas que las sesiones se pisen.

Referencia:

  • Administrar sesiones de chat: https://code.visualstudio.com/docs/copilot/chat/chat-sessions

1) Divide por resultado, no por “zona del código”

Dale a cada agente una tarea con:

  • un objetivo concreto
  • restricciones claras
  • un chequeo de aceptación definido (tests, build, lint)

Si dos tareas tocan los mismos archivos, no tienes trabajo paralelo. Tienes conflicto.

2) Separa contexto y copias de trabajo

Mantén cada agente en su propia sesión de chat. Abre una sesión nueva cuando cambie el tema.

Si ejecutas varias instancias de VS Code (o varios agentes) contra el mismo repositorio, usa branches aisladas e idealmente directorios de trabajo separados (por ejemplo con git worktree) para que no se sobrescriban cambios en silencio.

3) Trata los archivos de instrucciones como tu “cerebro compartido”

Pon reglas no negociables del repo en:

  • .github/copilot-instructions.md para reglas compartidas del proyecto
  • AGENTS.md si quieres explícitamente un set always-on para múltiples agentes

Esto mantiene alineadas las sesiones en paralelo incluso cuando sus historiales locales divergen.

4) Impón una puerta de revisión humana

Varios agentes pueden proponer cambios. Solo tu proceso normal de revisión debería fusionarlos.

Como mínimo:

  • Revisar diffs
  • Ejecutar tests
  • Confirmar que archivos de secretos y configuración no se modificaron sin intención

Si el output del asistente te sorprende, la vista Chat Debug muestra qué contexto e instrucciones se enviaron realmente.

Referencia:

  • Chat Debug view: https://code.visualstudio.com/docs/copilot/chat/chat-debug-view

Artículos: colaboración con IA con estándares

Estos artículos exploran el desarrollo asistido por IA como un problema de colaboración: bucles de retroalimentación, disciplina y hábitos que mantienen la calidad alta.

Copilot como compañero de pensamiento

  • Cuando la IA se convierte en tu compañero de pensamiento
    Una historia real de migración donde la calidad de la conversación importó más que la velocidad de generar código.
  • La barba gris y la máquina
    Qué cambia cuando llega Copilot, y por qué el juicio sigue importando.

Calidad, colaboración y tests

Trabajo con legado sin miedo


Temas relacionados