Skip to main content

Enterprise Server 3.22 está disponível no momento como versão candidata a lançamento.

Configurar e usar GitHub Copilot CLI

Configure um provedor de modelos para sua GitHub Enterprise Server instância e conecte Copilot CLI os clientes à instância.

Observação

Esse recurso está dentro versão prévia técnica e sujeito a alterações.

Você pode configurar Copilot CLI para funcionar com GitHub Enterprise Server em ambientes desconectados ou isolados da rede, sem conectividade com a nuvem GitHub. Um administrador configura um provedor de modelos para a instância e os usuários se conectam Copilot CLI com suas GitHub Enterprise Server credenciais.

A configuração desse recurso envolve duas funções:

  • Administrador: configura o provedor de modelo na GitHub Enterprise Server instância usando ghe-config. Essa é uma configuração única que requer acesso SSH administrativo.
  • Usuário final: define variáveis de ambiente em um computador local para se conectar Copilot CLI à instância.

Pré-requisitos

  • Você tem acesso SSH administrativo à GitHub Enterprise Server instância.
  • Você tem uma chave de API de um provedor LLM com suporte.
  • Copilot CLI é instalado em computadores cliente. Consulte Instalando a CLI do GitHub Copilot.
  • GitHub CLI (gh) é instalado em computadores cliente. Consulte o GitHub CLI manual na GitHub CLI documentação.

Para obter informações sobre provedores com suporte e requisitos de modelo, consulte Usando seus próprios modelos LLM na CLI do GitHub Copilot.

Configurando sua GitHub Enterprise Server instância

Esta etapa é para o operador ou administrador da GitHub Enterprise Server instância.

Com acesso administrativo por SSH à instância GitHub Enterprise Server, configure o provedor do modelo usando os seguintes valores de ghe-config. Depois de configurar, execute ghe-config-apply para aplicar as alterações.

Nome da variávelObrigatórioOpçõesDescription
app.copilot-proxy.enabledYes
true, falseHabilita ou desabilita o recurso.
app.copilot-proxy.endpoint-urlYesURIA URL de base upstream completa, incluindo qualquer prefixo de versão (por exemplo, https://api.openai.com/v1).
secrets.copilot-proxy.endpoint-keyYesStringA chave de API para o provedor upstream.
app.copilot-proxy.provider-model-idYesStringO ID do provedor de modelo que Copilot CLI usa para localizar o modelo internamente.
app.copilot-proxy.provider-typeYes
openai, azure, anthropicO tipo de provedor. OpenAI inclui OpenAI, Ollama, vLLM, Foundry Local e qualquer outro endpoint compatível com a API de Chat Completions da OpenAI.
app.copilot-proxy.upstream-timeoutNãoInteiro, em segundosTempo limite de leitura/envio em segundos para solicitações upstream. Se não estiver definido, retornará ao tempo limite padrão.
app.copilot-proxy.provider-wire-apiNão
completions, responsesO formato da API de fio para o provedor.
app.copilot-proxy.provider-wire-modelNãoStringSubstitui o identificador de modelo enviado ao provedor upstream se ele for diferente da ID do modelo interno.
app.copilot-proxy.enable-upstream-probeNão
true, falseAtiva ou desativa a sonda upstream de inicialização. Por padrão, está habilitado. Quando desativada, a sonda de inicialização é ignorada.

Por exemplo, os comandos a seguir configuram um provedor OpenAI.

ghe-config app.copilot-proxy.enabled true
ghe-config app.copilot-proxy.endpoint-url 'https://api.openai.com/v1'
ghe-config secrets.copilot-proxy.endpoint-key 'YOUR-API-KEY'
ghe-config app.copilot-proxy.provider-model-id 'gpt-5.5'
ghe-config app.copilot-proxy.provider-wire-model 'gpt-5.5'
ghe-config app.copilot-proxy.provider-type openai
ghe-config app.copilot-proxy.upstream-timeout 300
ghe-config app.copilot-proxy.enable-upstream-probe false
ghe-config-apply

Substitua YOUR-API-KEY pela chave de API real antes de aplicar a configuração.

Configurando seu Copilot CLI cliente (usuário final)

Configure Copilot CLI para se conectar à sua GitHub Enterprise Server instância definindo as seguintes variáveis de ambiente antes de iniciar Copilot CLI.

Variável de ambienteObrigatórioDescription
COPILOT_PROVIDER_GHES_HOSTYesO nome do host da sua instância GitHub Enterprise Server.
COPILOT_PROVIDER_GHES_TOKENYesUm personal access token para a GitHub Enterprise Server instância. Esse token autentica solicitações à instância.
COPILOT_OFFLINEYesHabilita o modo offline. O GitHub Enterprise Server provedor só estará ativo quando o modo offline estiver habilitado.

Noções básicas sobre tokens de cliente (usuário final)

Copilot CLI precisa de acesso à inferência de LLM, por isso COPILOT_PROVIDER_GHES_TOKEN é sempre necessário. Você também provavelmente desejará Copilot CLI executar GitHub operações como criar problemas, solicitações de pull e repositórios de pesquisa. Essas operações podem ser feitas por meio do GitHub CLI.

É recomendável e preferencial que você execute gh auth login --hostname YOUR-GHES-HOSTNAME. Depois que ele for bem-sucedido, a próxima etapa será definir COPILOT_PROVIDER_GHES_TOKEN como o token gerado em gh auth login --hostname YOUR-GHES-HOSTNAME. É mais seguro recuperar o token dinamicamente em vez de copiá-lo de ~/.config/gh/hosts.yml. Você pode fazer isso usando COPILOT_PROVIDER_GHES_TOKEN="$(gh auth token --hostname YOUR-GHES-HOSTNAME)".

Como alternativa, você pode gerar um personal access token em sua GitHub Enterprise Server instância, definir esse token como COPILOT_PROVIDER_GHES_TOKENe usar o mesmo token ao executar gh auth login --hostname YOUR-GHES-HOSTNAME.

A abordagem acima funciona quando você está usando Copilot CLI interativamente. Para automação, você precisa fazer algumas coisas de forma diferente:

  • Definir GH_ENTERPRISE_TOKEN (ou GITHUB_ENTERPRISE_TOKEN) como personal access token.
  • Defina GH_HOST como o nome do host do servidor.
  • Quando as credenciais GH_ENTERPRISE_TOKEN e gh auth login existirem para o mesmo host, a variável de ambiente prevalece.
  1. Autenticar GitHub CLI.

    gh auth login --hostname YOUR-GHES-HOSTNAME
    
  2. Defina as variáveis de ambiente exigidas por Copilot CLI.

    export COPILOT_PROVIDER_GHES_HOST=YOUR-GHES-HOSTNAME
    export COPILOT_PROVIDER_GHES_TOKEN="$(gh auth token --hostname YOUR-GHES-HOSTNAME)"
    export COPILOT_OFFLINE=true
    

    Se você estiver autenticado com gh auth login várias contas, poderá definir GH_HOST como nome de host do servidor e definir GH_ENTERPRISE_TOKEN (ou GITHUB_ENTERPRISE_TOKEN) como "$(gh auth token --hostname YOUR-GHES-HOSTNAME)". Isso garante que GitHub CLI aponte para sua instância GitHub Enterprise Server.

    export GH_HOST=YOUR-GHES-HOSTNAME
    export GH_ENTERPRISE_TOKEN="$(gh auth token --hostname YOUR-GHES-HOSTNAME)"
    
  3. Inicie o Copilot CLI.

copilot

Você pode executar toda essa configuração como um script.

Examples

Se ambas GitHub Enterprise Server e suas Copilot CLI configurações estiverem corretas, você deverá ver respostas como as seguintes em sua Copilot CLI sessão.

     • fabric-core-mcp — disabled
     • powerbi-mcp — disabled
     • slack — connected

 ● Current model: gpt-5.5

 ❯ Hello                                                                   13:31

 ● Hello!

 ❯ what is going on in github/codeql-action repo?                          13:33

 ● I’ll check recent repository activity on the GHES host: repo metadata, open 
   PRs/issues, and latest commits.

 $ Shell Fetch repo metadata 2 lines…                                         5s
   gh api --hostname "$GH_HOST" repos/github/codeql-action --jq '{name_with_own…

Capacidades compatíveis com GitHub Enterprise Server

Para obter as informações mais atualizadas sobre os recursos do Copilot CLI, consulte GitHub Copilot CLI como a fonte principal de referência. Em geral, qualquer funcionalidade que dependa da conectividade com GitHub os serviços de nuvem não está disponível na GitHub Enterprise Server configuração offline.

A tabela a seguir fornece uma visão geral indicativa do que está disponível na oferta GitHub Enterprise Server.

CapacidadeGitHub / GitHub Enterprise CloudGitHub Enterprise Server
Programação assistida por IA (prompts, geração de código, depuração)
Comandos do Shell e operações de arquivo
GitHub operações (problemas, PRs, repositórios) via gh CLI
(requer gh CLI autenticada na instância)
GitHub Ferramentas do servidor MCP
Pesquisa na Web e busca na Web
Copilot seleção de modelos (GitHubmodelos hospedados)
Relatórios de telemetria e uso
Atualização automática