{"meta":{"title":"Autenticación de la CLI de GitHub Copilot","intro":"Autentíquese CLI de Copilot para que pueda usar Copilot directamente desde la línea de comandos.","product":"GitHub Copilot","breadcrumbs":[{"href":"/es/copilot","title":"GitHub Copilot"},{"href":"/es/copilot/how-tos","title":"Procedimientos"},{"href":"/es/copilot/how-tos/copilot-cli","title":"CLI de Copilot"},{"href":"/es/copilot/how-tos/copilot-cli/set-up-copilot-cli","title":"Configuración de la CLI de Copilot"},{"href":"/es/copilot/how-tos/copilot-cli/set-up-copilot-cli/authenticate-copilot-cli","title":"Autenticación de la CLI de Copilot"}],"documentType":"article"},"body":"# Autenticación de la CLI de GitHub Copilot\n\nAutentíquese CLI de Copilot para que pueda usar Copilot directamente desde la línea de comandos.\n\n## Acerca de la autenticación\n\nSi usa sus propias claves de API del proveedor LLM (BYOK), GitHub no es necesaria la autenticación.\n\nLa autenticación es necesaria para cualquier otro CLI de GitHub Copilot uso.\n\nCuando se requiere autenticación, CLI de Copilot admite tres métodos. El método que usa depende de si está trabajando de forma interactiva o en un entorno automatizado.\n\n* **Flujo de dispositivo OAuth**: método predeterminado y recomendado para uso interactivo. Cuando se ejecuta `/login` en CLI de Copilot, la CLI genera un código único y le dirige a autenticarse en el explorador. Esta es la manera más sencilla de autenticarse. Consulte [Autenticación con OAuth](#authenticating-with-oauth).\n* **Variables de entorno**: recomendadas para pipelines de CI/CD, contenedores y entornos no interactivos. Se establece un token admitido como una variable de entorno (`COPILOT_GITHUB_TOKEN`, `GH_TOKEN`o `GITHUB_TOKEN`) y la CLI la usa automáticamente sin preguntar. Consulte [Autenticación con variables de entorno](#authenticating-with-environment-variables).\n* **\n              GitHub CLI Solución alternativa**: si está instalado y autenticado GitHub CLI (`gh`) (recuerde: la CLI de `gh`, no `copilot`), CLI de Copilot podrá usar su token automáticamente. Este es el método de prioridad más bajo y solo se activa cuando no se encuentran otras credenciales. Consulte [Autenticación con GitHub CLI](#authenticating-with-github-cli).\n\nUna vez autenticado, CLI de Copilot recuerda el inicio de sesión y usa automáticamente el token para todas las Copilot solicitudes de API. Puede iniciar sesión con varias cuentas y la CLI recordará la última cuenta usada. La vigencia y expiración del token dependen de cómo se creó el token en la configuración de la cuenta o de la organización.\n\n## Uso no autenticado\n\nSi configura CLI de Copilot para usar sus propias claves de API del proveedor LLM (BYOK), GitHub**no es necesaria** la autenticación. \n              CLI de Copilot puede conectarse directamente al proveedor configurado sin una cuenta o token de GitHub.\n\nSin embargo, sin GitHub autenticación, las siguientes características **no están disponibles**:\n\n* `/delegate`: requiere agente en la nube de Copilot, que se ejecuta en los servidores de GitHub.\n* GitHub Servidor MCP: requiere autenticación para acceder GitHub a las API\n* GitHub Búsqueda de código: requiere autenticación para consultar GitHubel índice de búsqueda.\n\nPuede combinar el modelo BYOK, de gestión de claves de cifrado propias, con la autenticación de GitHub para aprovechar al máximo los dos modos: su modelo preferido para las respuestas de IA, además del acceso a funciones alojadas en GitHub, como `/delegate` y la búsqueda de código.\n\n### Modo sin conexión\n\n Si establece la variable de entorno `COPILOT_OFFLINE` en `true`, CLI de Copilot se ejecuta sin ponerse en contacto con los servidores de GitHub. En modo sin conexión:\n\n* No se intenta realizar ninguna GitHub autenticación.\n* La CLI solo realiza solicitudes de red al proveedor BYOK configurado.\n* La telemetría está totalmente deshabilitada.\n\nEl modo sin conexión **solo está completamente aislado** si el proveedor del modelo BYOK es local o está dentro del mismo entorno aislado (por ejemplo, un modelo que se ejecuta de forma local y sin acceso a redes externas). Si `COPILOT_PROVIDER_BASE_URL` apunta a un punto de conexión remoto o accesible a Internet, se seguirán enviando mensajes y contexto de código a través de la red a ese proveedor. Sin el modo sin conexión, incluso cuando se usa BYOK sin GitHub autenticación, la telemetría todavía se envía normalmente.\n\n### Tipos de token admitidos\n\n| Tipo de token                 | Prefijo        | Soportado | Notas                                                  |\n|----------------------------|---------------|-----------|--------------------------------------------------------|\n| Token de OAuth (flujo de dispositivo)  | `gho_`        | Sí       | Método predeterminado a través de `copilot login`                     |\n| PAT de alta especificidad           | `github_pat_` | Sí       | Debe incluir los permisos necesarios **Copilot Requests** |\n| GitHub aplicación de usuario a servidor  | `ghu_`        | Sí       | A través de la variable de entorno                               |\n| PAT clásico                | `ghp_`        | No        | No es compatible con CLI de Copilot |\n\n### Cómo Copilot CLI almacena las credenciales\n\nDe forma predeterminada, la CLI almacena el token de OAuth en la cadena de claves del sistema operativo bajo el nombre `copilot-cli`del servicio :\n\n| Plataforma | Cadena de claves |\n|---|---|\n| macOS | Acceso a cadena de claves |\n| Windows | Administrador de credenciales |\n| Linux | libsecret (GNOME Keyring, KWallet) |\n\nSi la cadena de claves del sistema no está disponible (por ejemplo, en un servidor Linux sin interfaz gráfica sin `libsecret` instalado), la CLI solicita que almacene el token en un archivo de configuración en texto plano en `~/.copilot/config.json`.\n\nAl ejecutar un comando, CLI de Copilot comprueba si hay credenciales en el orden siguiente:\n\n1. La variable de entorno `COPILOT_GITHUB_TOKEN`\n1. La variable de entorno `GH_TOKEN`\n1. La variable de entorno `GITHUB_TOKEN`\n1. Token de OAuth desde la cadena de claves del sistema\n1. reversión de la CLI de GitHub (`gh auth token`)\n\n> [!NOTE]\n> * Una variable de entorno invalida silenciosamente un token de OAuth almacenado. Si establece `GH_TOKEN` para otra herramienta, la CLI usa ese token en lugar del token de OAuth de `copilot login`. Para evitar un comportamiento inesperado, desconjunte las variables de entorno que no pretende usar la CLI.\n> * Al configurar variables de entorno del proveedor BYOK (por ejemplo, `COPILOT_PROVIDER_BASE_URL`, `COPILOT_PROVIDER_API_KEY`), CLI de Copilot las usa para las solicitudes del modelo de IA independientemente del estado de GitHub autenticación. \n              GitHub Los tokens solo son necesarios para las GitHub características hospedadas.\n\n## Autenticación con OAuth\n\nEl flujo de dispositivos OAuth es el método de autenticación predeterminado para uso interactivo. Puede autenticarse mediante la ejecución `/login` desde CLI de Copilot o `copilot login` desde el terminal.\n\n### Autenticación con `/login`\n\n1. En CLI de Copilot, ejecute `/login`.\n\n   ```bash copy\n   /login\n   ```\n\n1. Seleccione la cuenta con la que desea autenticarse. Para GitHub Enterprise Cloud con residencia de datos, escriba el nombre del host de la instancia.\n\n   ```text\n   What account do you want to log into?\n    1. GitHub.com\n    2. GitHub Enterprise Cloud with data residency (*.ghe.com)\n   ```\n\n1. La CLI muestra un código de usuario único y lo copia automáticamente en el Portapapeles y abre el explorador.\n\n   ```text\n   Waiting for authorization...\n   Enter one-time code: 1234-5678 at https://github.com/login/device\n   Press any key to copy to clipboard and open browser...\n   ```\n\n1. Vaya a la dirección URL de verificación en `https://github.com/login/device` si el explorador no se ha abierto automáticamente.\n1. Pegue el código de un solo uso en el campo de la página.\n1. Si su organización utiliza SAML para el inicio de sesión único, haga clic en **Authorize** junto a cada organización a la que quiera conceder acceso.\n1. Revise los permisos solicitados y haga clic en **Authorize GitHub Copilot CLI**.\n1. Vuelva al terminal. La CLI muestra un mensaje de operación correcta cuando se completa la autenticación.\n\n   ```text\n   Signed in successfully as Octocat. You can now use Copilot.\n   ```\n\n### Autenticación con `copilot login`\n\n1. Desde el terminal, ejecute `copilot login`. Si va a usar GitHub Enterprise Cloud con residencia de datos, pase el nombre de host de la instancia.\n\n   ```bash copy\n   copilot login\n   ```\n\n   Para GitHub Enterprise Cloud:\n\n   ```bash copy\n   copilot login --host HOSTNAME\n   ```\n\n   La CLI muestra un código de usuario único y lo copia automáticamente en el Portapapeles y abre el explorador.\n\n   ```text\n   To authenticate, visit https://github.com/login/device and enter code 1234-5678.\n   ```\n\n1. Vaya a la dirección URL de verificación en `https://github.com/login/device` si el explorador no se ha abierto automáticamente.\n1. Pegue el código de un solo uso en el campo de la página.\n1. Si su organización utiliza SAML para el inicio de sesión único, haga clic en **Authorize** junto a cada organización a la que quiera conceder acceso.\n1. Revise los permisos solicitados y haga clic en **Authorize GitHub Copilot CLI**.\n1. Vuelva al terminal. La CLI muestra un mensaje de operación correcta cuando se completa la autenticación.\n\n   ```text\n   Signed in successfully as Octocat.\n   ```\n\n## Autenticación con variables de entorno\n\nPara entornos no interactivos, puede autenticarse estableciendo una variable de entorno con un token admitido. Esto es ideal para pipelines de CI/CD, contenedores o servidores sin interfaz gráfica.\n\n1. Visite [Fine-grained personal access tokens](https://github.com/settings/personal-access-tokens/new).\n1. En \"Permisos\", haga clic en **Agregar permisos** y seleccione **Copilot Solicitudes**.\n1. Haga clic en **Generar token**.\n1. Exporte el token en la configuración del terminal o del entorno. Use la `COPILOT_GITHUB_TOKEN`variable de entorno , `GH_TOKEN`o `GITHUB_TOKEN` (en orden de prioridad).\n\n## Autenticación con GitHub CLI\n\nSi usted tiene GitHub CLI instalado y autenticado, CLI de Copilot puede usar su token como alternativa. Este método tiene la prioridad más baja y solo se activa cuando no se establecen variables de entorno y no se encuentra ningún token almacenado.\n\n1. Compruebe que GitHub CLI está autenticado.\n\n    ```bash copy\n    gh auth status\n    ```\n\n    Si utiliza GitHub Enterprise Cloud con residencia de datos, verifique que el nombre de host correcto está autenticado.\n\n    ```bash copy\n    gh auth status --hostname HOSTNAME\n    ```\n\n1. Ejecute `copilot`. La CLI de Copilot usa automáticamente el token de GitHub CLI.\n1. Ejecute `/user` para comprobar la cuenta autenticada en la CLI.\n\n## Cambio entre cuentas\n\n              CLI de Copilot admite varias cuentas. Puede enumerar las cuentas disponibles y cambiar entre ellas desde la CLI.\nPara ver las cuentas disponibles, ejecute `/user list` en la instrucción de CLI de Copilot.\nPara cambiar a otra cuenta, escriba `/user switch` en la solicitud.\n\nPara agregar otra cuenta, ejecute `copilot login` desde una nueva sesión de terminal o ejecute el comando de inicio de sesión desde la CLI y autorice con la otra cuenta.\n\n## Cierre de sesión y eliminación de credenciales\n\nPara cerrar la sesión, escriba `/logout` en la instrucción de CLI de Copilot. Esto quita el token almacenado localmente, pero no lo revoca en GitHub.\n\nPara revocar la autorización de la aplicación OAuth en GitHub y evitar que se use en otro lugar, siga estos pasos.\n\n1. Vaya a **Configuración** > **Aplicaciones** > **de OAuth autorizadas**.\n1. Vaya a la página de configuración:\n   1. En la esquina superior derecha de cualquier página de GitHub, haga clic en la imagen de perfil.\n   1. Haga clic en **Configuración**.\n1. En la barra lateral izquierda, haga clic en **Aplicaciones**.\n1. En **Aplicaciones de OAuth autenticadas**, haga clic en <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"The horizontal kebab icon\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg> junto a **GitHub CLI** para expandir el menú y seleccione **Revoke**."}