Sobre a autenticação
CLI do GitHub Copilot dá suporte a três métodos de autenticação. 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 `/login` CLI do Copilot, a CLI gera um código de uso único e orienta você a fazer a autenticação no navegador. Essa é a maneira mais simples de autenticar. -
**Variáveis de ambiente**: recomendado 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_TOKEN`ou `GH_TOKEN``GITHUB_TOKEN`) e a CLI o usa automaticamente sem solicitar. -
**GitHub CLI fallback**: se você tiver GitHub CLI () (`gh`observação: a `gh` CLI, não `copilot`) instalada e autenticada, CLI do Copilot poderá usar seu token automaticamente. Esse é o método de prioridade mais baixo e é ativado somente quando nenhuma outra credencial é encontrada.
Depois de autenticado, CLI do Copilot lembra seu logon e usa automaticamente o token para todas as solicitações de API Copilot . 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.
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 incluir permissões necessárias Solicitações do Copilot |
| GitHub App usuário para servidor | ghu_ | Yes | Por meio da variável de ambiente |
| PAT clássico | ghp_ | Não | Não há suporte para CLI do Copilot |
Como a CLI do Copilot 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 | Keychain |
|---|---|
| macOS | Acesso ao conjunto de chaves |
| Windows | Gerenciador de Credenciais |
| Linux | libsecret (GNOME Keyring, KWallet) |
Se o conjunto de chaves do sistema não estiver disponível — por exemplo, em um servidor Linux sem interface gráfica sem libsecret instalado — a CLI solicitará que você armazene o token em um arquivo de configuração de texto sem formatação em ~/.copilot/config.json.
Quando um comando é executado, CLI do Copilot verifica as credenciais na seguinte ordem:
- A variável de ambiente
COPILOT_GITHUB_TOKEN - A variável de ambiente
GH_TOKEN - A variável de ambiente
GITHUB_TOKEN - Token OAuth do conjunto de chaves do sistema
- Recurso de contingência da CLI do GitHub (
gh auth token)
Observação
Uma variável de ambiente substitui silenciosamente um token OAuth armazenado. Se você definir GH_TOKEN para outra ferramenta, a CLI usará esse token em vez do token OAuth de copilot login. Para evitar um comportamento inesperado, desconjunta variáveis de ambiente que você não pretende que a CLI use.
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 com CLI do Copilot ou copilot login no terminal.
Autenticar com /login
-
Em CLI do Copilot, execute
/login.Bash /login
/login -
Selecione a conta com a qual você deseja autenticar. Para GitHub Enterprise Cloud com residência de dados, insira o nome do host da 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 e o copia automaticamente para sua área de transferência e abre 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 seu 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 Autorizar ao lado de cada organização à qual você deseja conceder acesso.
-
Examine as permissões solicitadas e clique em Autorizar a CLI do GitHub Copilot.
-
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
-
Execute
copilot loginno terminal. Se você estiver usando GitHub Enterprise Cloud com residência de dados, passe 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 e o copia automaticamente para sua área de transferência e abre seu navegador.
To authenticate, visit https://github.com/login/device and enter code 1234-5678. -
Acesse o URL de verificação em
https://github.com/login/devicese o navegador não abrir automaticamente. -
Cole o código de uso único no campo da página.
-
Se sua organização usar o SSO do SAML, clique em Autorizar ao lado de cada organização à qual você deseja conceder acesso.
-
Examine as permissões solicitadas e clique em Autorizar a CLI do GitHub Copilot.
-
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 "Permissões", 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).
Autenticando com GitHub CLI
Se você tiver GitHub CLI instalado e autenticado, CLI do Copilot pode usar seu token como alternativa. Esse método tem a prioridade mais baixa e é ativado somente quando nenhuma variável de ambiente é definida e nenhum token armazenado é encontrado.
-
Verifique se GitHub CLI está autenticado.
Bash gh auth status
gh auth statusSe você usar GitHub Enterprise Cloud com residência de dados, verifique se o nome de host correto está autenticado.
Bash gh auth status --hostname HOSTNAME
gh auth status --hostname HOSTNAME -
Execute
copilot. A CLI do Copilot usa automaticamente o token GitHub CLI. -
Execute
/userpara verificar sua conta autenticada na CLI.
Como alternar entre contas
CLI do Copilot suporta várias contas. Você pode listar as contas disponíveis e alternar entre elas de dentro da CLI. Para listar contas disponíveis, execute /user list no prompt CLI do Copilot . 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 CLI do Copilot . Isso remove o token armazenado localmente, mas não o revoga em GitHub.
Para revogar a autorização do aplicativo OAuth em GitHub e impedir que ele seja usado 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 do GitHub, clique na foto do seu perfil.
- Clique em Configurações.
- Na barra lateral esquerda, clique em Aplicativos.
- Em Aplicativos OAuth Autorizados, clique em ao lado da CLI do GitHub para expandir o menu e selecionar Revogar.