Observação
SDK do Copilot está em versão 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 (Azure AI Foundry, 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 OAuth
*
ghu_ — GitHub Tokens de acesso do usuário do aplicativo
*
github_pat_ — Fine-grained personal access tokens
**Sem suporte:**
*
ghp_ — Personal access tokens (classic) (fechando)
**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):**
1.
COPILOT_GITHUB_TOKEN— Recomendado para uso explícito Copilot
1.
GH_TOKEN — GitHub CLI compatível
1.
GITHUB_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 Azure AI Foundry, 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 AZure AI Foundry, 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 -
**Chave HMAC** – `CAPI_HMAC_KEY` ou `COPILOT_HMAC_KEY` variáveis de ambiente -
**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 auth` credenciais
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
-
[AUTOTITLE](/copilot/how-tos/copilot-sdk/authenticate-copilot-sdk/bring-your-own-key) -
[Documentação de servidores MCP](https://github.com/github/copilot-sdk/blob/main/docs/features/mcp.md) – Conectar-se a ferramentas externas usando o SDK