Sobre a autenticação
Se você usar suas próprias chaves de API do provedor LLM (BYOK), GitHub a autenticação não será necessária.
A autenticação é necessária para qualquer outro GitHub Copilot CLI uso.
Quando a autenticação é necessária, Copilot CLI dá suporte a três métodos. O método usado depende se você está trabalhando interativamente ou em um ambiente automatizado.
- Fluxo do dispositivo OAuth: o método padrão e recomendado para uso interativo. Quando você executa
/loginem Copilot CLI, a CLI gera um código único e direciona você a se autenticar no navegador. Essa é a maneira mais simples de autenticar. Consulte Autenticação com OAuth. - variáveis de ambiente: As recomendadas para pipelines de CI/CD, contêineres e ambientes não interativos. Você define um token com suporte como uma variável de ambiente (
COPILOT_GITHUB_TOKENouGH_TOKEN``GITHUB_TOKEN) e a CLI o usa automaticamente sem solicitar. Consulte Autenticação com variáveis de ambiente. - GitHub CLI fallback: se você tiver GitHub CLI (
gh) (observação: aghCLI, nãocopilot) instalada e autenticada, Copilot CLI poderá usar seu token automaticamente. Esse é o método de prioridade mais baixo e é ativado somente quando nenhuma outra credencial é encontrada. Consulte Autenticação com GitHub CLI.
Depois de autenticado, Copilot CLI lembra o logon e usa automaticamente o token para todas as Copilot solicitações de API. Você pode fazer logon com várias contas e a CLI se lembrará da conta usada pela última vez. O tempo de vida e a expiração do token dependem de como o token foi criado nas configurações de sua conta ou organização.
Uso não autenticado
Se você configurar Copilot CLI para usar suas próprias CHAVES de API do provedor LLM (BYOK), GitHub a autenticação não será necessária. Copilot CLI pode se conectar diretamente ao provedor configurado sem uma GitHub conta ou token.
No entanto, sem GitHub autenticação, os seguintes recursos não estão disponíveis:
/delegate: requer Copilot cloud agent, que é executado nos servidores de GitHub- GitHub Servidor MCP: requer autenticação para acessar GitHub APIs
- GitHub Pesquisa de Código: requer autenticação para consultar GitHubo índice de pesquisa
Você pode combinar o BYOK com a autenticação GitHub para unir o melhor dos dois mundos: seu modelo preferido para respostas de IA e o acesso a recursos hospedados em GitHub, como /delegate e pesquisa de código.
Modo offline
Se você definir a variável de ambiente COPILOT_OFFLINE para true, Copilot CLI será executada sem entrar em contato com os servidores de GitHub. No modo offline:
- Nenhuma GitHub autenticação será tentada.
- A CLI só faz solicitações de rede para seu provedor BYOK configurado.
- A telemetria está totalmente desabilitada.
O modo offline é totalmente isolado da Internet apenas quando o provedor BYOK é local ou está no mesmo ambiente isolado (por exemplo, um modelo executado localmente, sem acesso à rede externa). Se COPILOT_PROVIDER_BASE_URL apontar para um endpoint remoto ou acessível pela Internet, os prompts e o contexto de código continuarão a ser enviados pela rede para esse fornecedor. Sem o modo offline, mesmo ao usar BYOK sem GitHub autenticação, a telemetria ainda é enviada normalmente.
Tipos de token com suporte
| Tipo de token | Prefixo | Suportado | Anotações |
|---|---|---|---|
| Token OAuth (fluxo de dispositivo) | gho_ | Yes | Método padrão por meio de copilot login |
| PAT refinado | github_pat_ | Yes | Deve ser propriedade da sua conta pessoal (não de uma organização) com a permissão de conta Copilot Requests |
| GitHub aplicativo usuário-para-servidor | ghu_ | Yes | Por meio da variável de ambiente |
| PAT clássico | ghp_ | Não | Não há suporte para Copilot CLI |
Como Copilot CLI armazena credenciais
Por padrão, a CLI armazena o token OAuth no conjunto de chaves do sistema operacional sob o nome copilot-clido serviço:
| Plataforma | Conjunto de chaves |
|---|---|
| macOS | Acesso às Chaves |
| Windows | Gerenciador de Credenciais |
| Linux | libsecret (GNOME Keyring, KWallet) |
Se o keychain do sistema não estiver disponível – por exemplo, em um servidor Linux sem interface gráfica e sem libsecret instalado – a CLI solicitará que você armazene o token em um arquivo de configuração de texto simples em ~/.copilot/config.json.
Ao executar um comando, Copilot CLI verifique se há credenciais na seguinte ordem:
-
Variável de ambiente `COPILOT_GITHUB_TOKEN` -
Variável de ambiente `GH_TOKEN` -
Variável de ambiente `GITHUB_TOKEN` - Token OAuth do keychain do sistema
- Fallback da CLI do GitHub (
gh auth token)
Observação
- Uma variável de ambiente substitui silenciosamente um token OAuth armazenado. Se você definir
GH_TOKENpara outra ferramenta, a CLI usará esse token em vez do token OAuth decopilot login. Para evitar um comportamento inesperado, desconjunta variáveis de ambiente que você não pretende que a CLI use. - Quando você configura variáveis de ambiente do provedor BYOK (por exemplo,
COPILOT_PROVIDER_BASE_URL, ),COPILOT_PROVIDER_API_KEYCopilot CLI usa-as para solicitações de modelo de IA, independentemente do status GitHub de autenticação. GitHub Os tokens são necessários apenas para recursos hospedados em GitHub.
Autenticação com OAuth
O fluxo do dispositivo OAuth é o método de autenticação padrão para uso interativo. Você pode autenticar executando /login a partir de Copilot CLI ou copilot login através de seu terminal.
Autenticar com /login
-
De Copilot CLI, execute
/login.Bash /login
/login -
Selecione a conta com a qual você deseja autenticar. Para GitHub Enterprise Cloud com residência de dados, informe o nome do host da sua instância
What account do you want to log into? 1. GitHub.com 2. GitHub Enterprise Cloud with data residency (*.ghe.com) -
A CLI exibe um código de usuário único, copia-o automaticamente para a sua área de transferência e abre o seu navegador.
Waiting for authorization... Enter one-time code: 1234-5678 at https://github.com/login/device Press any key to copy to clipboard and open browser... -
Navegue até a URL de verificação em
https://github.com/login/devicese o navegador não abrir automaticamente. -
Cole o código único no campo na página.
-
Se sua organização usar o SSO do SAML, clique em Authorize ao lado de cada organização à qual você deseja conceder access.
-
Examine as permissões solicitadas e clique em Authorize GitHub Copilot CLI.
-
Retorne ao terminal. A CLI exibe uma mensagem de êxito quando a autenticação é concluída.
Signed in successfully as Octocat. You can now use Copilot.
Autenticar com copilot login
-
No terminal, execute
copilot login. Se você estiver usando GitHub Enterprise Cloud com residência de dados, forneça o nome do host da instância.Bash copilot login
copilot loginPara GitHub Enterprise Cloud:
Bash copilot login --host HOSTNAME
copilot login --host HOSTNAMEA CLI exibe um código de usuário único, copia-o automaticamente para a sua área de transferência e abre o seu navegador.
To authenticate, visit https://github.com/login/device and enter code 1234-5678. -
Navegue até a URL de verificação em
https://github.com/login/devicese o navegador não abrir automaticamente. -
Cole o código único no campo na página.
-
Se sua organização usar o SSO do SAML, clique em Authorize ao lado de cada organização à qual você deseja conceder access.
-
Examine as permissões solicitadas e clique em Authorize GitHub Copilot CLI.
-
Retorne ao terminal. A CLI exibe uma mensagem de êxito quando a autenticação é concluída.
Signed in successfully as Octocat.
Autenticação com variáveis de ambiente
Para ambientes não interativos, você pode autenticar definindo uma variável de ambiente com um token com suporte. Isso é ideal para pipelines de CI/CD, contêineres ou servidores sem cabeça.
- Visite Fine-grained personal access tokens.
- Em Proprietário do recurso, selecione sua conta pessoal. Não selecione uma organização. A permissão Copilot Solicitações só está disponível em fine-grained personal access tokens de propriedade do usuário.
- Em Acesso ao Repositório, selecione o nível de acesso apropriado para seu caso de uso:
- Repositórios públicos se você precisar trabalhar apenas com repositórios públicos.
- Todos os repositórios se você precisar de acesso em todos os seus repositórios atuais e futuros.
- Selecione apenas repositórios se quiser restringir o acesso a repositórios específicos.
- Em Permissões, selecione a guia Conta .
- Clique em Adicionar permissões e selecione Copilot Solicitações.
- Clique em Gerar token.
- Exporte o token na configuração do terminal ou do ambiente. Use a variável de ambiente
COPILOT_GITHUB_TOKEN,GH_TOKENouGITHUB_TOKEN(em ordem de precedência).
Autenticação com GitHub CLI
Se você tiver GitHub CLI instalado e autenticado, Copilot CLI poderá usar seu token como um fallback. Esse método tem a prioridade mais baixa e é ativado somente quando nenhuma variável de ambiente é definida e nenhum token armazenado é encontrado.
-
GitHub CLI Verifique se ele está autenticado.
Bash gh auth status
gh auth statusSe você usar GitHub Enterprise Cloud com residência de dados, verifique se o nome do host correto está autenticado.
Bash gh auth status --hostname HOSTNAME
gh auth status --hostname HOSTNAME -
Execute
copilot. A CLI do Copilot usa o token GitHub CLI automaticamente. -
Execute
/userpara verificar sua conta autenticada na CLI.
Como alternar entre contas
Copilot CLI dá suporte a várias contas. Você pode listar as contas disponíveis e alternar entre elas de dentro da CLI.
Para listar as contas disponíveis, execute /user list no Copilot CLI prompt.
Para alternar para uma conta diferente, digite /user switch no prompt.
Para adicionar outra conta, execute copilot login em uma nova sessão de terminal ou execute o comando de logon de dentro da CLI e autorize com a outra conta.
Sair e remover credenciais
Para sair, digite /logout no prompt Copilot CLI. Isso remove o token armazenado localmente, mas não o revoga no GitHub.
Para revogar a autorização GitHub do aplicativo OAuth e impedir que ela seja usada em outro lugar, siga estas etapas.
- Navegue até Configurações > Aplicativos > Aplicativos OAuth autorizados.
- Navegue até a página de configurações:
- No canto superior direito de qualquer página em GitHub, clique na sua imagem de perfil.
- Clique em Configurações.
- Na barra lateral esquerda, clique em Aplicativos.
- Em Authorized OAuth Apps, clique em ao lado de GitHub CLI para expandir o menu e selecionar Revoke.
Próximas Etapas
Se você encontrar problemas de autenticação, consulte Solução de problemas na autenticação do GitHub Copilot CLI.