Observação
SDK do Copilot está em prévia pública no momento. A funcionalidade e a disponibilidade estão sujeitas a alterações.
Visão geral dos métodos de autenticação
SDK do GitHub Copilot dá suporte a vários métodos de autenticação para atender a diferentes casos de uso.
| Método | Caso de uso | Copilot assinatura necessária | |--------|----------|-------------------------------| | Usuário conectado do GitHub | Aplicativos interativos onde os usuários fazem login com GitHub | Sim | | Aplicativo OAuth GitHub | Aplicativos que atuam em nome dos usuários por meio do OAuth | Sim | | Variáveis de ambiente | CI/CD, automação, servidor para servidor | Sim | | BYOK (traga sua própria chave) | Usando suas próprias chaves de API (Fábrica de IA do Azure, OpenAI etc) | No |
Usuário conectado do GitHub
Esse é o método de autenticação padrão ao executar o CLI do GitHub Copilot modo interativo, consulte Autenticando GitHub Copilot CLI. Os usuários se autenticam por meio do GitHub fluxo do dispositivo OAuth e o SDK usa suas credenciais armazenadas.
Como funciona:
- O usuário executa a
copilotCLI e entra por meio GitHub do OAuth. - As credenciais são armazenadas com segurança no conjunto de chaves do sistema.
- O SDK usa automaticamente as credenciais armazenadas.
Configuração do SDK:
import { CopilotClient } from "@github/copilot-sdk";
// Default: uses signed-in user credentials
const client = new CopilotClient();
Para obter exemplos em outros idiomas, consulte Autenticação no github/copilot-sdk repositório.
Quando usar este método:
- Aplicativos da área de trabalho em que os usuários interagem diretamente
- Ambientes de desenvolvimento e teste
- Qualquer cenário em que um usuário possa entrar interativamente
Aplicativo GitHub OAuth
Use um aplicativo OAuth GitHub para autenticar usuários por meio do aplicativo e passar suas credenciais para o SDK. Isso permite que seu aplicativo faça GitHub Copilot solicitações de API em nome de usuários que autorizam seu aplicativo.
Como funciona:
- Usuário autoriza seu aplicativo OAuth GitHub.
- Seu aplicativo recebe um token de acesso de usuário com prefixo (
gho_oughu_). - Passe o token para o SDK por meio da opção
githubToken.
Configuração do SDK:
import { CopilotClient } from "@github/copilot-sdk";
const client = new CopilotClient({
githubToken: userAccessToken, // Token from OAuth flow
useLoggedInUser: false, // Don't use stored CLI credentials
});
Para obter exemplos em outros idiomas, consulte Autenticação no github/copilot-sdk repositório.
Tipos de token com suporte:
gho_— Tokens de acesso do usuário OAuthghu_— GitHub Tokens de acesso do usuário do aplicativogithub_pat_— Fine-grained personal access tokens
Sem suporte:
-
`ghp_` — Personal access tokens (classic) (desativação)
Quando usar este método:
- Aplicativos Web em que os usuários se inscrevem por meio de GitHub
- Aplicativos SaaS (software como serviço) baseados em GitHub Copilot
- Qualquer aplicativo multiusuário em que você precisa fazer solicitações em nome de usuários diferentes
Variáveis de ambiente
Para automação, pipelines de CI/CD e cenários de servidor para servidor, você pode se autenticar usando variáveis de ambiente.
Variáveis de ambiente com suporte (em ordem de prioridade):
COPILOT_GITHUB_TOKEN— Recomendado para uso explícito CopilotGH_TOKEN— GitHub CLI compatívelGITHUB_TOKEN— GitHub Actions compatível
O SDK detecta e usa automaticamente essas variáveis de ambiente sem nenhuma alteração de código necessária:
import { CopilotClient } from "@github/copilot-sdk";
// Token is read from environment variable automatically
const client = new CopilotClient();
Quando usar este método:
- Pipelines de CI/CD (GitHub Actions, Jenkins etc)
- Teste automatizado
- Aplicativos do lado do servidor com contas de serviço
- Desenvolvimento quando você não deseja usar o login interativo
BYOK (Bring Your Own Key - traga sua própria chave)
O BYOK permite que você use suas próprias chaves de API de provedores de modelo, como Fábrica de IA do Azure, OpenAI ou Antropic. Isso ignora totalmente a autenticação GitHub Copilot.
Principais benefícios:
- Nenhuma GitHub Copilot assinatura necessária
- Usar implantações de modelo empresarial
- Cobrança direta com seu fornecedor de modelo
- Suporte para pontos de extremidade compatíveis com a Fábrica de IA do Azure, OpenAI, Antropic e OpenAI
Para obter instruções de instalação completas, incluindo opções de configuração do provedor, limitações e exemplos de código, consulte traga sua própria chave (BYOK).
Prioridade de autenticação
Quando vários métodos de autenticação estão disponíveis, o SDK os usa nesta ordem de prioridade:
- Explícito
githubToken— Token passado diretamente para o construtor do SDK -
**Token de API direta** – `GITHUB_COPILOT_API_TOKEN` com `COPILOT_API_URL` - Tokens de variáveis de ambiente —
COPILOT_GITHUB_TOKEN→GH_TOKEN→GITHUB_TOKEN - Credenciais de OAuth armazenadas — Do login da CLI anterior
copilot - **
GitHub CLI
** —
gh authcredenciais
Desabilitando a entrada automática
Para impedir que o SDK use automaticamente credenciais armazenadas ou GitHub CLI autenticação, defina a opção useLoggedInUser como false:
const client = new CopilotClient({
useLoggedInUser: false, // Only use explicit tokens
});
Para obter exemplos em outros idiomas, consulte Autenticação no github/copilot-sdk repositório.
Próximas Etapas
- traga sua própria chave (BYOK)
- Documentação de servidores MCP – Conectar-se a ferramentas externas usando o SDK