# 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.

> \[!NOTE]
> 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](/pt/enterprise-cloud@latest/copilot/how-tos/copilot-cli/set-up-copilot-cli/install-copilot-cli).
* GitHub CLI (`gh`) é instalado em computadores cliente. Consulte o [GitHub CLI manual](https://cli.github.com/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](/pt/enterprise-cloud@latest/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models).

## 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ável                          | Obrigatório                                                                                                                                         | Opções               | Description                                                                                                                      |
| ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `app.copilot-proxy.enabled`               | Yes                                                                                                                                                 |                      |                                                                                                                                  |
| `true`, `false`                           | Habilita ou desabilita o recurso.                                                                                                                   |                      |                                                                                                                                  |
| `app.copilot-proxy.endpoint-url`          | Yes                                                                                                                                                 | URI                  | A URL de base upstream completa, incluindo qualquer prefixo de versão (por exemplo, `https://api.openai.com/v1`).                |
| `secrets.copilot-proxy.endpoint-key`      | Yes                                                                                                                                                 | String               | A chave de API para o provedor upstream.                                                                                         |
| `app.copilot-proxy.provider-model-id`     | Yes                                                                                                                                                 | String               | O ID do provedor de modelo que Copilot CLI usa para localizar o modelo internamente.                                             |
| `app.copilot-proxy.provider-type`         | Yes                                                                                                                                                 |                      |                                                                                                                                  |
| `openai`, `azure`, `anthropic`            | O 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-timeout`      | Não                                                                                                                                                 | Inteiro, em segundos | Tempo 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-api`     | Não                                                                                                                                                 |                      |                                                                                                                                  |
| `completions`, `responses`                | O formato da API de fio para o provedor.                                                                                                            |                      |                                                                                                                                  |
| `app.copilot-proxy.provider-wire-model`   | Não                                                                                                                                                 | String               | Substitui o identificador de modelo enviado ao provedor upstream se ele for diferente da ID do modelo interno.                   |
| `app.copilot-proxy.enable-upstream-probe` | Não                                                                                                                                                 |                      |                                                                                                                                  |
| `true`, `false`                           | Ativa 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.

```shell
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 ambiente          | Obrigatório | Description                                                                                                            |
| ----------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------- |
| `COPILOT_PROVIDER_GHES_HOST`  | Yes         | O nome do host da sua instância GitHub Enterprise Server.                                                              |
| `COPILOT_PROVIDER_GHES_TOKEN` | Yes         | Um personal access token para a GitHub Enterprise Server instância. Esse token autentica solicitações à instância.     |
| `COPILOT_OFFLINE`             | Yes         | Habilita 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_TOKEN`e 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.

## Configuração recomendada do usuário final

1. Autenticar GitHub CLI.

   ```shell
   gh auth login --hostname YOUR-GHES-HOSTNAME
   ```

2. Defina as variáveis de ambiente exigidas por Copilot CLI.

   ```shell
   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.

   ```shell
   export GH_HOST=YOUR-GHES-HOSTNAME
   export GH_ENTERPRISE_TOKEN="$(gh auth token --hostname YOUR-GHES-HOSTNAME)"
   ```

3. Inicie o Copilot CLI.

```bash
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.

```shell
     • 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](/pt/enterprise-cloud@latest/copilot/how-tos/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.

| Capacidade                                                                                                                                                                                                                                                                                                                                                          |                                                                                                                                             GitHub / GitHub Enterprise Cloud                                                                                                                                             |                                                                                                                                                                                                       GitHub Enterprise Server                                                                                                                                                                                                      |
| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| Programação assistida por IA (prompts, geração de código, depuração)                                                                                                                                                                                                                                                                                                | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> |                                                       <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                      |
| Comandos do Shell e operações de arquivo                                                                                                                                                                                                                                                                                                                            | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> |                                                       <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                      |
| GitHub operações (problemas, PRs, repositórios) via `gh` CLI                                                                                                                                                                                                                                                                                                        | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> |                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> (requer `gh` CLI autenticada na instância) |                                                                                                                                                                                                                                                                                                                          |                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| GitHub Ferramentas do servidor MCP                                                                                                                                                                                                                                                                                                                                  | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not available" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |
| Pesquisa na Web e busca na Web                                                                                                                                                                                                                                                                                                                                      | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not available" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |
| Copilot seleção de modelos (GitHubmodelos hospedados)                                                                                                                                                                                                                                                                                                               | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not available" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |
| Relatórios de telemetria e uso                                                                                                                                                                                                                                                                                                                                      | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not available" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |
| Atualização automática                                                                                                                                                                                                                                                                                                                                              | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Available" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="Not available" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |