GitHub Copilot CLI: cómo instalar y usar Copilot desde la terminal
Aprende a utilizar GitHub Copilot CLI como agente de programación directamente desde la terminal: instalación en Windows, macOS y Linux, login, sesiones, Plan, Autopilot, modelos, permisos, Git, Worktrees, Code Review, Skills, Custom Agents, MCP, Hooks, Plugins y delegación al Copilot Cloud Agent.
¿Qué es GitHub Copilot CLI?
GitHub Copilot CLI es la interfaz de línea de comandos de GitHub Copilot. Permite conversar con un agente de programación desde terminal, analizar repositorios, editar archivos, ejecutar comandos, revisar cambios, utilizar varios modelos, delegar trabajo a Subagents, trabajar con Skills, MCP, Hooks y Plugins, y enviar tareas al Copilot Cloud Agent para que trabaje remotamente y prepare un Pull Request.
Qué puede hacer Copilot CLI
Analizar proyectos
Explorar código, arquitectura y dependencias.
Editar código
Crear y modificar archivos.
Ejecutar comandos
Tests, lint, build, Git y herramientas.
Autopilot
Continuar trabajando automáticamente hasta completar el objetivo.
Subagents
Delegar investigaciones y trabajos especializados.
Cloud Agent
Delegar trabajo remoto y recibir un Pull Request.
Copilot CLI es un agente, no solo un generador de comandos
Explora
Lee repositorio, Git e instrucciones.
Planifica
Diseña el cambio antes de ejecutarlo.
Actúa
Edita, ejecuta y delega.
Verifica
Tests, diff y code review.
Cómo instalar GitHub Copilot CLI
GitHub ofrece varios métodos oficiales de instalación.
npm — Windows, macOS y Linux
npm install -g @github/copilot
necesitas Node.js 22 o una versión posterior.
WinGet — Windows
winget install GitHub.Copilot
Homebrew — macOS y Linux
brew install --cask copilot-cli
Script oficial — macOS y Linux
curl -fsSL https://gh.io/copilot-install | bash
También puedes usar:
wget -qO- https://gh.io/copilot-install | bash
Instalar funciones preliminares
npm install -g @github/copilot@prerelease
En Windows:
winget install GitHub.Copilot.Prerelease
Con Homebrew:
brew install --cask copilot-cli@prerelease
Úsala cuando quieras probar nuevas funciones y puedas aceptar cambios frecuentes de comportamiento.
Comprueba que Copilot CLI está instalado
copilot version
Para actualizar:
copilot update
Para consultar ayuda:
copilot help
Autenticarse con GitHub Copilot CLI
copilot login
En una sesión interactiva también puedes utilizar:
/login
En un terminal local, Copilot normalmente utiliza el flujo web. En SSH, CI, Codespaces u otros terminales remotos, puede utilizar el flujo de device code.
Web flow, device code y tokens
copilot login --web-flow
copilot login --device-code
Para entornos automatizados también existen variables como:
COPILOT_GITHUB_TOKEN
GH_TOKEN
GITHUB_TOKEN
Utiliza secret stores, variables protegidas o mecanismos apropiados para cada entorno.
Inicia Copilot dentro de tu proyecto
cd mi-proyecto
copilot
La primera vez, Copilot puede pedirte confirmar que confías en los archivos del directorio.
Give me an overview
of this project.
Do not modify files.
Explain:
- architecture
- entry points
- modules
- data flow
- database
- external APIs
- tests
- build system
- high-risk areas
Abrir Copilot directamente en otra carpeta
copilot -C /ruta/al/proyecto
Dentro de la sesión:
/cwd
/cd ruta/al/directorio
Preparar el repositorio con copilot init
copilot init
O dentro de una sesión:
/init
Esto ayuda a crear instrucciones y configuración agentic adaptadas al repositorio.
Comandos importantes de Copilot CLI
| Comando | Uso |
|---|---|
/help |
Ver ayuda |
/init |
Inicializar configuración del repositorio |
/model |
Cambiar modelo |
/agent |
Seleccionar Custom Agent |
/instructions |
Ver y activar instrucciones |
/mcp |
Administrar servidores MCP |
/diff |
Revisar cambios Git |
/review |
Ejecutar Code Review |
/resume |
Recuperar sesión |
/delegate |
Delegar al Cloud Agent |
/autopilot |
Activar ejecución autónoma |
/permissions |
Administrar permisos |
/settings |
Administrar configuración |
/env |
Ver entorno cargado |
/context |
Ver uso del contexto |
/compact |
Compactar historial de conversación |
Adjuntar archivos e información a una sesión
En el modo interactivo puedes usar @ para añadir un archivo:
@src/auth.php
Explain how authentication works.
Para incluir un issue o Pull Request de GitHub:
#123
Ejecutar comandos sin abandonar Copilot CLI
Anteponiendo ! puedes ejecutar directamente un comando de shell:
! git status
! npm test
! php -l plugin.php
También existe un modo de shell interactivo completo desde la propia interfaz.
Interactive, Plan y Autopilot
| Modo | Uso recomendado |
|---|---|
| Interactive | Trabajar paso a paso |
| Plan | Analizar y preparar un cambio antes de modificar |
| Autopilot | Ejecutar un objetivo con mínima intervención |
Shift + Tab
permite alternar
entre
Standard,
Plan
y Autopilot
en la interfaz
interactiva.
Planificar antes de editar
copilot --plan
Prompt:
Necesitamos añadir
autenticación por OAuth.
Investiga el proyecto.
Crea un plan indicando:
- archivos
- funciones
- datos
- configuración
- cambios de DB
- seguridad
- tests
- riesgos
No modifiques
ningún archivo todavía.
Dejar que Copilot continúe trabajando por sí mismo
Autopilot se ejecuta en tu máquina local. El agente continúa trabajando sobre un objetivo hasta considerar que la tarea está completa, en lugar de detenerse continuamente para pedir una nueva instrucción.
Dentro de una sesión:
/autopilot
/goal Fix the failing authentication tests
Desde línea de comandos:
copilot --autopilot
Autopilot con permisos completos
copilot --autopilot --yolo
También puedes limitar el número de continuaciones:
copilot \
--autopilot \
--yolo \
--max-autopilot-continues 10 \
-p "Fix the failing integration tests"
Este modo concede permisos amplios sobre herramientas, paths y URLs. No debería ser el valor predeterminado de todos tus proyectos.
Planificar primero y ejecutar después automáticamente
copilot --plan --mode autopilot
Este workflow permite comenzar con razonamiento de planificación y pasar automáticamente a ejecución cuando el plan está preparado.
Ejecutar un prompt sin abrir la interfaz interactiva
copilot -p "Explain the architecture of this repository"
El proceso termina después de completar la respuesta.
La salida incluye información para poder reanudar posteriormente esa sesión.
Abrir sesión y lanzar inmediatamente un prompt
copilot -i "Review the current repository"
A diferencia
de -p,
la sesión
permanece
interactiva.
Copilot CLI conserva el contexto del trabajo
Para continuar la sesión más reciente:
copilot --continue
Para elegir una sesión:
copilot --resume
También:
/resume
Trabajar con varias sesiones simultáneamente
Copilot CLI dispone de una barra lateral de sesiones para mantener varios trabajos abiertos.
Copilot CLI
│
├── Session A
│ └── auth bug
│
├── Session B
│ └── API tests
│
└── Session C
└── documentation
Evita mantener una conversación gigantesca con varios problemas no relacionados.
Cambiar el modelo de Copilot CLI
Dentro de una sesión:
/model
Al iniciar:
copilot --model auto
Auto permite que Copilot seleccione automáticamente un modelo disponible.
Copilot CLI puede utilizar modelos de varios proveedores
La lista exacta puede cambiar según tu plan, disponibilidad y políticas, pero el CLI admite modelos de familias como:
Claude
Modelos Anthropic para programación y razonamiento.
GPT
Modelos OpenAI para razonamiento complejo.
Codex
Modelos orientados a ingeniería de software.
Gemini
Modelos de Google disponibles según configuración.
El catálogo
cambia
con mucha rapidez.
Utiliza
/model
para consultar
lo disponible
en tu cuenta.
Configurar esfuerzo de razonamiento
copilot --effort high
Dependiendo del modelo pueden existir niveles como:
Respuestas rápidas.
Trabajo general.
Tareas complejas.
Razonamiento profundo cuando es compatible.
Controlar qué puede hacer Copilot CLI
Copilot CLI puede utilizar herramientas que leen, editan archivos, ejecutan comandos, acceden a URLs y llaman servicios MCP. Estas acciones están sujetas a controles de permisos.
/permissions
Qué hace –yolo
copilot --yolo
Es equivalente a:
copilot --allow-all
Dentro de una sesión:
/yolo
/allow-all
Allow All elimina solicitudes individuales de permiso para herramientas, paths y URLs, pero el agente puede seguir necesitando decisiones o información durante una sesión normal.
Limitar filesystem y red
/sandbox status
/sandbox policy
En entornos donde esta función está habilitada, el sandbox permite restringir filesystem y acceso de red para comandos y herramientas.
Los permisos controlan qué acciones puede aprobar Copilot. El sandbox añade límites técnicos sobre lo que esas acciones pueden alcanzar.
Guardar reglas permanentes para Copilot CLI
Copilot CLI puede combinar instrucciones desde varias ubicaciones.
AGENTS.md
CLAUDE.md
GEMINI.md
.github/copilot-instructions.md
.github/instructions/*.instructions.md
También existen instrucciones personales:
~/.copilot/copilot-instructions.md
~/.copilot/instructions/*.instructions.md
Ver qué instrucciones detectó Copilot
copilot instruction list
Para obtener JSON:
copilot instruction list --json
Dentro de una sesión:
/instructions
/env
Crear workflows especializados para Copilot CLI
Una Skill es una carpeta que puede contener:
Instrucciones.
Scripts.
Referencias.
Otros recursos.
.github/
└── skills/
└── security-review/
├── SKILL.md
└── scripts/
También:
.agents/skills/
.claude/skills/
Administrar Skills desde terminal
copilot skill
La CLI permite gestionar Skills sin necesidad de abrir una sesión interactiva.
Crear especialistas con contexto propio
Los Custom Agents pueden vivir a nivel de proyecto:
.github/
└── agents/
├── security-auditor.agent.md
├── tester.agent.md
└── architect.agent.md
O a nivel personal:
~/.copilot/agents/
Cómo utilizar un Custom Agent
Dentro de una sesión:
/agent
O directamente:
copilot \
--agent security-auditor \
--prompt "Review the authentication module"
El trabajo de un Custom Agent se ejecuta como Subagent, con su propio contexto, permitiendo mantener la conversación principal más limpia.
Ejecutar investigaciones en paralelo
Review this feature.
Delegate independently:
1. architecture analysis
2. security review
3. test coverage review
Run independent work
in parallel.
Do not modify files.
Combine the findings
and remove duplicates.
Copilot CLI dispone además del comando:
/fleet Review the repository for security regressions
para distribuir partes independientes de una tarea entre Subagents.
Ver qué tareas están ejecutando los agentes
/tasks
Desde ahí puedes inspeccionar Subagents activos y trabajos ejecutándose en segundo plano.
Conectar Copilot CLI con herramientas externas
Copilot CLI ya incluye integración con GitHub mediante MCP y puede incorporar servidores adicionales.
copilot mcp list
Añadir un servidor HTTP:
copilot mcp add \
--transport http \
mi-servidor \
https://ejemplo.com/mcp
Servidor local:
copilot mcp add \
mi-servidor-local \
-- comando argumentos
No todos los servidores MCP tienen el mismo nivel de confianza
| Origen | Confianza |
|---|---|
| Built-in | Alta |
| Repositorio | Revisar configuración |
| Workspace | Revisar configuración |
| User config | Responsabilidad del usuario |
| Servidor remoto desconocido | Revisión obligatoria |
Esto aplica incluso a operaciones que aparentemente solo leen información externa.
Ejecutar comandos automáticamente durante una sesión
Los Hooks permiten disparar comandos cuando ocurren eventos del agente.
.github/
└── hooks/
└── tests.json
Eventos disponibles incluyen:
sessionStart.
sessionEnd.
userPromptSubmitted.
preToolUse.
postToolUse.
errorOccurred.
Puedes configurar un Hook para ejecutar tests después de determinadas modificaciones realizadas por el agente.
Instalar paquetes de capacidades para Copilot CLI
Los Plugins pueden combinar componentes como:
Custom Agents.
Skills.
Hooks.
Servidores MCP.
Ver marketplaces:
copilot plugin marketplace list
Instalar:
copilot plugin install \
PLUGIN@MARKETPLACE
Administrar:
copilot plugin list
copilot plugin update PLUGIN
copilot plugin uninstall PLUGIN
Revisar visualmente los cambios desde la CLI
/diff
El modo Diff permite navegar entre archivos, revisar cambios y añadir comentarios directamente sobre líneas.
Ejecutar un agente especializado en revisar cambios
/review
Puedes añadir instrucciones:
/review Focus on:
- regressions
- security
- data loss
- authentication
- authorization
- missing tests
Copilot CLI también puede trabajar en checkouts aislados
La integración directa de Worktrees continúa evolucionando, por lo que conviene revisar su estado antes de depender de ella en producción.
Crear un worktree:
/worktree
O iniciar Copilot directamente en un worktree:
copilot --worktree
Esto permite aislar:
Bugfixes.
Features.
Experimentos.
Refactors.
Delegar una tarea desde Copilot CLI
A diferencia de Autopilot, /delegate no ejecuta la tarea en tu computador. Envía el trabajo al Copilot Cloud Agent en GitHub.
/delegate complete the API integration tests
and fix any failing edge cases
También puedes anteponer &:
& complete the API integration tests
and fix any failing edge cases
Autopilot vs /delegate
| Autopilot | /delegate |
|---|---|
| Trabaja localmente | Trabaja en GitHub Cloud |
| Usa tu equipo | Usa entorno remoto |
| Puedes ver el progreso | Puedes abandonar el equipo |
| Modifica el checkout local | Crea rama remota |
| Ideal para automatización local | Ideal para delegación completa |
| Termina en tu workspace | Termina en draft Pull Request |
Qué ocurre después de utilizar /delegate
Checkpoint
Copilot revisa cambios locales sin commit.
Branch
Se crea una nueva rama.
Draft PR
Cloud Agent abre un Pull Request.
Background
Trabaja remotamente.
Review
Solicita tu revisión.
Conectar Copilot CLI con el IDE
/ide
Esto permite conectar la sesión CLI con un workspace compatible de VS Code para compartir contexto y trabajar entre ambas superficies.
Configuración personal y del repositorio
/settings
Configuración personal:
~/.copilot/settings.json
Configuración versionable del repositorio:
.github/copilot/settings.json
Controlar el gasto de una ejecución
Copilot CLI permite establecer límites suaves de créditos.
copilot --max-ai-credits 5
Dentro de la sesión:
/limits
Ejemplo de Copilot CLI para un plugin WordPress
Analiza este plugin WordPress.
No modifiques archivos todavía.
Mapea:
- archivo principal
- clases
- hooks
- AJAX
- REST API
- cron
- tablas
- options
- WooCommerce
- permisos
- nonces
- SQL
- sanitización
- escaping
Después:
1. identifica riesgos reales
2. crea un plan
3. espera antes de implementar.
Cómo usar Copilot CLI en un proyecto real
Abre el repositorio
Trabaja desde la raíz correcta.
Comprueba Git
Evita mezclar cambios existentes.
Inicializa contexto
Configura instrucciones y Skills.
Explora
Comprende arquitectura y flujo.
Planifica
Usa Plan para tareas grandes.
Implementa
Interactive o Autopilot.
Verifica
Tests, lint, build y comportamiento.
Review
Usa /diff y /review.
Plantilla para Copilot CLI
# Objective
[RESULT]
# Context
[PROBLEM]
# Current behavior
[CURRENT]
# Expected behavior
[EXPECTED]
# Constraints
- preserve public APIs
- follow existing architecture
- avoid unrelated changes
- avoid unnecessary dependencies
- maintain backwards compatibility
- do not reduce security
# Before editing
1. inspect the current flow
2. identify relevant files
3. find similar patterns
4. identify risks
5. create a plan
# Implementation
Apply the smallest
safe change
that satisfies
the requirements.
# Verification
Run:
- relevant tests
- lint
- typecheck
- build
when available
Then:
- inspect git diff
- look for regressions
- check security
- remove debug code
# Final response
Report:
- root cause
- files changed
- tests executed
- results
- remaining risks
Buenas prácticas al dar acceso a tu terminal
Usa control de versiones.
Revisa comandos destructivos.
No expongas secretos.
Revisa servidores MCP.
Limita permisos.
Revisa el diff final.
Ejecuta tests.
Aísla tareas experimentales.
Problemas frecuentes al usar Copilot CLI
| Problema | Qué revisar |
|---|---|
| copilot: command not found | Instalación y PATH |
| Error con npm | Node.js 22+ y permisos |
| No puede iniciar sesión | OAuth, device code o políticas de organización |
| No puede editar un archivo | Permisos y paths permitidos |
| No puede usar Internet | Permisos, sandbox y política |
| MCP no aparece | Configuración, trust y estado del servidor |
| Skill no se detecta | Ubicación y SKILL.md |
| Custom Agent no aparece | .github/agents y reinicio del CLI |
| Respuestas pierden contexto | /context, /compact o nueva sesión |
Copilot CLI vs VS Code vs Cloud Agent
| CLI | VS Code | Cloud Agent |
|---|---|---|
| Terminal | IDE | GitHub Cloud |
| Trabajo local | Trabajo local | Trabajo remoto |
| Muy automatizable | Más visual | Delegación completa |
| Ideal para terminal | Ideal para desarrollo interactivo | Ideal para tareas background |
| Autopilot | Agent Mode | Draft PR |
Guías relacionadas
Documentación de GitHub Copilot CLI
Copilot CLI
Introducción, plataformas, modos y seguridad.
Ver documentación →CLI Reference
Comandos, slash commands, opciones y configuración.
Ver referencia →Customize Copilot CLI
Instructions, Skills, Hooks, Agents, MCP y Plugins.
Ver personalización →Delegating Tasks
Autopilot y Cloud Agent.
Ver delegación →FAQ sobre GitHub Copilot CLI
GitHub Copilot CLI es la interfaz de línea de comandos de Copilot. Permite utilizar un agente de programación desde terminal para analizar repositorios, modificar código, ejecutar comandos, trabajar con Git y utilizar herramientas agentic avanzadas.
Puedes instalar Copilot CLI mediante npm, WinGet, Homebrew o el script oficial para macOS y Linux. Con npm se utiliza npm install -g @github/copilot y actualmente requiere Node.js 22 o posterior.
Sí. GitHub proporciona instalación oficial para Windows mediante WinGet y también puedes utilizar npm. Windows requiere PowerShell 6 o posterior para el flujo soportado oficialmente.
Abre una terminal, entra en el directorio de tu proyecto y ejecuta el comando copilot. La interfaz interactiva se abrirá dentro de esa carpeta.
Autopilot es un modo en el que Copilot puede continuar trabajando de forma autónoma sobre un objetivo en tu máquina local, reduciendo las pausas para solicitar nuevas instrucciones.
–yolo es un alias de –allow-all. Permite a Copilot utilizar herramientas, rutas y URLs sin solicitar cada aprobación individualmente. Debe utilizarse con cuidado.
Autopilot trabaja localmente en tu sesión de Copilot CLI. /delegate envía la tarea al Copilot Cloud Agent, que trabaja remotamente en GitHub y prepara un Pull Request.
Sí. Puedes utilizar –continue para continuar la sesión reciente o –resume para seleccionar una sesión guardada. La interfaz interactiva también dispone de /resume.
Sí. Puedes utilizar /model dentro de una sesión o iniciar Copilot con –model. La opción auto permite que Copilot seleccione automáticamente un modelo disponible.
Sí. Copilot CLI puede cargar AGENTS.md además de CLAUDE.md, GEMINI.md, .github/copilot-instructions.md e instrucciones específicas por ruta.
Sí. Las Agent Skills pueden incluir instrucciones, scripts y recursos para workflows especializados. Las Skills de proyecto pueden ubicarse en .github/skills, .agents/skills o .claude/skills.
Sí. Puedes crear agentes especializados mediante perfiles .agent.md. Los Custom Agents trabajan como Subagents con contexto propio y pueden recibir herramientas específicas.
Sí. Copilot CLI puede utilizar servidores MCP locales y remotos para conectarse a herramientas, documentación, sistemas externos y servicios.
Sí. Los Hooks permiten ejecutar comandos cuando ocurren eventos como inicio o término de sesión, envío de prompts, uso de tools o errores.
Sí. Los Plugins permiten distribuir capacidades como Agents, Skills, Hooks y configuraciones MCP. Copilot CLI permite instalar Plugins desde marketplaces.
GitHub Copilot Agent Mode: cómo programar con un agente autónomo
Ahora que conoces Copilot CLI, el siguiente paso es profundizar en la arquitectura de Agent Mode: planificación, tools, terminal, permisos, contexto, loops de ejecución, Subagents, Skills, MCP, tests y mejores workflows para delegar tareas de programación.
Aprender Copilot Agent Mode →