3. Modos de uso de GitHub Copilot CLI

Objetivo del tema

Comprender cómo aprovechar los modos de trabajo que ofrece GitHub Copilot CLI para adaptarla a sesiones conversacionales, automatizaciones puntuales y flujos mixtos.

Al terminar sabrás iniciar cada modo, gestionar sus aprobaciones y elegir la alternativa correcta según la tarea y el nivel de supervisión que necesitas.

3.1 Modo interactivo

El modo interactivo abre una sesión persistente donde conversas con el agente, revisas propuestas y autorizas cada acción antes de ejecutarla.

copilot

Al iniciar la sesión:

  • La herramienta solicita confiar en la carpeta actual para poder leer, modificar o ejecutar archivos dentro de ella.
  • Si no has iniciado sesión, verás la instrucción para usar el comando de barra /login y autenticarte.
  • Las respuestas se muestran paso a paso; puedes reaccionar pidiendo aclaraciones, refinando el objetivo o rechazando una sugerencia.

Durante la conversación Copilot puede pedir permisos adicionales cuando necesita ejecutar herramientas como node, touch o git. Cada aprobación se concede por única vez o para toda la sesión, lo que te permite controlar cuidadosamente las acciones del agente.

Algunas ideas para aprovechar este modo:

  • Solicitar diagnósticos de errores y dejar que el agente navegue por los archivos para encontrar la causa.
  • Refactorizar un módulo, revisando cada cambio propuesto antes de aceptarlo.
  • Generar documentación incremental mientras mantienes el contexto de la sesión.

El historial permanece disponible durante la sesión, por lo que puedes volver a una respuesta previa, copiar fragmentos o ajustar el rumbo con nuevas indicaciones.

3.2 Modo de programación (single prompt)

El modo de programación ejecuta una única instrucción y finaliza, ideal para automatizaciones desde scripts o tareas repetitivas.

copilot -p "Cual es el lenguaje de programacion mas usado" --allow-all-tools
modo de programacion de github copilot cli

Consideraciones claves para este modo:

  • Si la instrucción requiere ejecutar herramientas o modificar archivos, debes suministrar banderas de aprobación como --allow-all-tools, --allow-tool <nombre> o --deny-tool para controlar qué acciones quedan permitidas.
  • Es compatible con encadenamientos en shell, lo que facilita integrarlo en scripts de automatización, hooks de Git o pipelines de CI.
  • El resultado se imprime en la salida estándar, por lo que puedes guardarlo en archivos, filtrar con jq o procesarlo con otros comandos.

Recuerda que cada ejecución consume una solicitud premium; si automatizas tareas frecuentes conviene monitorizar el uso mensual.

3.3 Comparación entre modos y cuándo usar cada uno

Ambos enfoques comparten la misma base de capacidades, pero su ergonomía y nivel de supervisión difieren. La siguiente tabla resume los escenarios recomendados.

Resumen práctico de los modos de GitHub Copilot CLI
Criterio Modo interactivo Modo de programación
Tipo de trabajo Exploración guiada, sesiones de pair programming con IA, tareas que requieren contexto continuo. Automatizaciones puntuales, scripts repetibles, integración con pipelines.
Supervisión Alta: apruebas comando por comando y puedes detener la ejecución en cualquier momento. Personalizable mediante banderas de aprobación; ideal para flujos ya controlados.
Persistencia del contexto Mantiene historial y archivos adjuntos durante toda la sesión. Sin historial; cada invocación parte de cero, lo que simplifica su uso en scripts.
Cuándo preferirlo Cuando necesitas debatir con el agente, validar alternativas o revisar resultados parciales. Cuando necesitas respuestas inmediatas en un flujo automatizado o deseas integrar la IA como paso de una tarea existente.

En proyectos reales suele combinarse ambos modos: se investiga una solución en modo interactivo y, una vez validado el proceso, se convierte en un comando automatizado mediante el modo de programación.