GitHub Copilot para la línea de comandos
GitHub Copilot no es solo para entornos de desarrollo integrados (IDE), ahora es un asistente eficaz en el terminal. La CLI de Copilot de GitHub lleva a Copilot directamente a la línea de comandos, donde puede explicar comandos, sugerir comandos de shell desde lenguaje natural y ayudarle a trabajar de forma segura e interactiva con los archivos y proyectos.
La CLI de Copilot usa la autenticación de GitHub y se ejecuta independientemente de la CLI de GitHub, aunque usa las credenciales existentes. Tanto si no está familiarizado con la línea de comandos como si es un desarrollador experimentado, la CLI de Copilot reduce las estimaciones y acelera los flujos de trabajo diarios.
En esta unidad se describe lo siguiente:
- Instalación y ejecución de la CLI de GitHub Copilot
- Sesiones interactivas en el terminal
- Comandos de barra diagonal y entrada de lenguaje natural
- Configuración y opciones
Instalación e inicio de la CLI de Copilot
Instale a través de Homebrew en macOS y Linux:
brew install copilot-cli
O bien, use el script de instalación oficial:
curl -fsSL https://gh.io/copilot-install | bash
Inicie la CLI de Copilot en modo interactivo:
copilot
Muestra un banner de bienvenida y una solicitud:
En el primer inicio, Copilot pregunta si confía en los archivos de la carpeta actual. Copilot puede leer, modificar o ejecutar archivos en este directorio durante la sesión, por lo que solo puede continuar en ubicaciones de confianza.
Puede usar @ para seleccionar un archivo específico con el que desea trabajar como contexto.
Dentro de una sesión interactiva, puede hacer lo siguiente:
- Use comandos de barra diagonal (
/command) para controlar la sesión y configurar la CLI de Copilot. - Escriba mensajes de lenguaje natural para explicar, sugerir o revisar comandos.
En solicitudes de un solo uso sin entrar en modo interactivo completo:
copilot -i "explain brew install git"
copilot -i "suggest find large files and delete them"
Comandos de barra diagonal comunes
Los comandos slash son comandos explícitos de control de sesión. Estos son los más comunes:
| Comando de barra diagonal | Description |
|---|---|
/help |
Mostrar comandos y opciones disponibles |
/explain <command> |
Pida a Copilot que explique cualquier comando de shell |
/suggest <task> |
Pida a Copilot que sugiera un comando de shell para una tarea |
/revise |
Revise la última sugerencia en función de las instrucciones. |
/feedback |
Enviar comentarios sobre una respuesta o sugerencia |
/exit |
Salir del modo interactivo |
/model <model> |
Selección del modelo de IA que se va a usar |
/theme [auto|dark|light] |
Cambiar el tema del terminal |
/skills |
Administración de aptitudes para funcionalidades mejoradas |
/mcp |
Administración de la configuración del servidor MCP |
/list-dirs |
Mostrar directorios permitidos para las operaciones de archivo |
/reset-allowed-tools |
Restablecimiento de la lista de herramientas permitidas |
Los comandos de barra diagonal no se pueden reemplazar por mensajes de lenguaje natural. Son la única manera de controlar los ajustes de sesión y la configuración.
Flujos de trabajo de ejemplo
1. Explicar un comando
> Explain what `git reset --hard HEAD` does
Copilot proporcionará una explicación detallada.
2. Sugerir un comando
> Find and delete all .log files in my home folder
Copilot genera una sugerencia de comando y le pide que lo ejecute si está satisfecho con sus sugerencias.
3. Revisar una sugerencia
Después de recibir una sugerencia, puede escribir un aviso de seguimiento para revisar el comando sugerido:
> Include only files modified in the last 7 days
4. Proporcionar comentarios
Después de una respuesta o sugerencia:
> /feedback
Copilot le pide que elija el tipo de comentarios que desea enviar y, a continuación, navegue hasta el formulario adecuado para completar sus comentarios.
5. Salir del modo interactivo
> /exit
Opciones de configuración
En la CLI de Copilot, la configuración se controla mediante:
Comandos de barra diagonal dentro del modo interactivo
-
/modelelegir el modelo de IA -
/themecambiar el tema del terminal -
/skillsadministración de funcionalidades mejoradas -
/reset-allowed-toolsrestablecimiento de herramientas -
/list-dirsver directorios permitidos -
/mcpConfiguración del servidor MCP
-
Configuración de la CLI de Copilot (modo no interactivo)
La configuración de la CLI de Copilot se administra mediante avisos de permisos, marcas de línea de comandos y archivos de configuración local. Esta configuración controla lo que Copilot puede acceder y hacer en su nombre.
Entre las opciones de configuración comunes se incluyen:
- Directorios de confianza: controle dónde Copilot puede leer, editar y ejecutar archivos.
- Permisos de herramienta: permita o restrinja a Copilot de ejecutar comandos de shell o modificar archivos mediante marcas como
--allow-toolo--deny-tool. - Permisos de ruta de acceso: controle a qué directorios puede acceder Copilot.
- Permisos de dirección URL: administre a qué dominios externos puede conectarse Copilot.
Consulte la documentación oficial de la CLI de GitHub Copilot para ver las opciones de configuración completas.
Entornos de ejecución aislados
GitHub Copilot CLI admite entornos de ejecución de espacio aislado que ayudan a proteger el sistema, a la vez que permiten a Copilot realizar tareas en su nombre.
El aislamiento aísla los comandos, las operaciones con archivos y otras actividades de tu entorno de desarrollo principal. En función del flujo de trabajo, puede elegir entre el espacio aislado local y el espacio aislado en la nube.
Aislamiento local
El aislamiento local permite a Copilot ejecutar comandos dentro de un entorno restringido en tu máquina.
Cuando está habilitada, el acceso de Copilot al sistema de archivos, la conectividad de red y las funcionalidades del sistema operativo es limitado, lo que ayuda a reducir el riesgo de cambios no deseados, a la vez que le permite beneficiarse de los flujos de trabajo asistidos por agente.
Para habilitar el espacio aislado local durante una sesión interactiva:
/sandbox enable
Después de habilitar el espacio aislado, los comandos ejecutados por Copilot se ejecutan dentro del entorno de espacio aislado en lugar de directamente en el sistema host.
Ventajas del espacio aislado local
| Benefit | Description |
|---|---|
| Seguridad mejorada | Restringe el acceso a los recursos del sistema confidenciales. |
| Experimentación más segura | Permite probar los flujos de trabajo controlados por agentes con un riesgo reducido. |
| Ejecución local | Usa los recursos de la máquina sin necesidad de infraestructura en la nube. |
| Mayor control | Proporciona medidas de seguridad adicionales al usar agentes autónomos. |
Aislamiento en la nube
El aislamiento en la nube permite que las sesiones de Copilot CLI se ejecuten dentro de entornos Linux completamente aislados alojados en GitHub.
A diferencia del espacio aislado local, las sesiones de espacio aislado en la nube se ejecutan por completo en infraestructura alojada por GitHub y se mantienen separadas de tu equipo local y de otras sesiones de espacio aislado.
El entorno aislado en la nube se basa en los entornos aislados de Azure Container Apps, y GitHub proporciona autenticación, gobernanza, aplicación de directivas e integración de facturación.
Para iniciar una sesión de entorno de pruebas en la nube:
copilot --cloud
Una vez iniciado, Copilot puede ejecutar comandos, modificar archivos, ejecutar pruebas y realizar tareas de desarrollo dentro del entorno de nube en lugar de en el dispositivo local.
Ventajas del aislamiento en la nube
| Benefit | Description |
|---|---|
| Aislamiento seguro | Las cargas de trabajo se ejecutan por separado de la máquina local. |
| Flexibilidad del dispositivo | Reanuda sesiones desde distintos dispositivos. |
| Descarga de recursos | Usa recursos en la nube en lugar de cpu y memoria locales. |
| Ejecución en paralelo | Ejecute varias tareas controladas por agentes simultáneamente. |
Continuar sesiones entre dispositivos
Dado que las sesiones de espacio aislado en la nube se ejecutan en la infraestructura hospedada GitHub, el trabajo no está vinculado a un equipo específico.
Esto le permite:
- Iniciar una sesión en un dispositivo
- Reanudación de la misma sesión desde otro dispositivo
- Continuar el trabajo sin transferir manualmente archivos ni volver a crear entornos
Esta flexibilidad es especialmente útil para los desarrolladores que trabajan en varias máquinas o ubicaciones.
Ciclo de vida de la sesión del espacio aislado en la nube
Las sesiones de espacio aislado en la nube pueden existir en tres estados:
| Estado | Description |
|---|---|
| Activo | La sesión está en ejecución y disponible para interactuar. |
| Detenido | La sesión está en pausa, pero su estado se conserva para su uso futuro. |
| Eliminado | La sesión y todo el estado guardado se eliminan de forma permanente. |
Cuando se detiene una sesión, GitHub guarda una instantánea del entorno, incluidos los archivos, las variables de entorno y el trabajo en curso. Reanudar la sesión restaura el estado guardado para que puedas continuar donde lo dejaste.
Autenticación y acceso
Los entornos aislados en la nube usan el mismo modelo de autenticación que GitHub Copilot CLI.
Si puede autenticarse en GitHub Copilot CLI y tener acceso a GitHub Copilot, no se requiere ninguna configuración adicional del proveedor de nube.
No es necesario:
- Administrar claves de API
- Configuración de la infraestructura en la nube
- Aprovisionamiento de máquinas virtuales
- Mantenimiento de entornos de contenedor
Nota:
Los administradores de la organización o de la empresa deben habilitar la directiva de acceso de espacio aislado en la nube para que los miembros puedan usar entornos de espacio aislado en la nube.
Espacio aislado local y en la nube
| Feature | Espacio aislado local | Espacio aislado en la nube |
|---|---|---|
| Ubicación de ejecución | Máquina local | entorno alojado en GitHub |
| Uso de recurso | Recursos locales | Recursos en la nube |
| Nivel de aislamiento | Entorno local restringido | Entorno de nube totalmente aislado |
| Independencia del dispositivo | No | Sí |
| Cargas de trabajo paralelas | Limitado por hardware local | Fácil de escalar |
¿Cuándo debería usar el espacio aislado?
Considere la posibilidad de usar espacio aislado cuando:
- Trabajar con repositorios desconocidos
- Prueba de los comandos generados por el agente
- Ejecución de flujos de trabajo autónomos
- Realización de operaciones potencialmente destructivas
- Trabajar en varios dispositivos
- Delegación de tareas de desarrollo con cálculo intensivo
El espacio aislado proporciona una capa adicional de seguridad y flexibilidad, lo que le permite aprovechar de forma segura las funcionalidades del agente de la CLI de GitHub Copilot.
Sugerencias para un uso eficaz de la CLI de Copilot
- Use el modo interactivo (
copilot) para tareas exploratorias. - Use el modo one-shot (
copilot -i) para obtener respuestas rápidas. - La entrada del lenguaje natural funciona: no siempre necesita comandos de barra diagonal.
- Revise siempre los comandos antes de la ejecución.
- Combine la CLI de Copilot con la CLI de GitHub (
gh) para la administración de problemas y repositorios. - Use comandos de barra diagonal cuando desee acciones estructuradas o comentarios.