Sobre a configuração do sandbox local
Você pode usar as configurações em GitHub Copilot app ou o comando de barra Copilot CLI em /sandbox para conceder caminhos extras, ajustar o acesso à rede ou ativar ou desativar a área restrita.
O sandboxing local limita o acesso a arquivos, recursos de rede e credenciais em seu computador, reduzindo o impacto potencial de um comando não intencional. As configurações são configuradas separadamente no Copilot app e Copilot CLI. Alterá-los em um não os altera no outro.
Observação
Se você obtiver sua licença Copilot de uma organização, algumas ou todas as configurações de sandbox poderão ser controladas por configurações gerenciadas pela organização.
Para uma visão geral conceitual das sandboxes na nuvem e locais para Copilot, consulte Sobre a nuvem e as áreas restritas locais para GitHub Copilot. Para obter instruções detalhadas sobre como usar o sandboxing local, consulte Usando o sandbox local.
Prerequisites
- Windows: o isolamento local no Windows requer Windows 11 versão 25H2 com atualização KB5124010 ou posterior, ou Windows 11 versão 26H1 com atualização KB5124006 ou posterior, com suporte para a camada BaseContainer do back-end ProcessContainer.
- Linux: O Bubblewrap (
bwrap), versão 0.5.0 ou posterior, eslirp4netnsdevem estar instalados e disponíveis no PATH.
Configurando o Copilot app
Você configura o sandbox local separadamente para cada projeto no GitHub Copilot app. A configuração se aplica a sessões de árvore de trabalho e repositório local. Ele não se aplica a sessões de área restrita de nuvem ou sessões executadas em um host remoto.
Uma árvore de trabalho mantém separadas as ramificações e os arquivos para sessões concorrentes, mas não restringe o que um comando pode acessar em outras partes da sua máquina. O isolamento em sandbox local oferece essa proteção adicional.
Ativar o sandbox local para um projeto
O isolamento local é desativado por padrão, a menos que as configurações gerenciadas pela empresa exijam isso. As configurações de sandbox não estão disponíveis para projetos somente remotos. Para habilitar o sandboxing para novas sessões locais em um projeto:
- Na barra lateral do aplicativo, abra Configurações.
- Em "Projetos", selecione o projeto que você deseja configurar.
- Em "Sandbox", ative as novas sessões do Sandbox.
A configuração se aplica a novas sessões no projeto. Ele não modifica uma sessão que já está em execução. Para obter detalhes de como ativar o sandboxing local para a sessão atual, consulte Usando o sandbox local.
Para a maioria dos projetos, você pode começar com a política de sandbox padrão. Isso permite o acesso necessário para tarefas comuns de desenvolvimento, como instalar dependências, conectar-se a um servidor de desenvolvimento local, efetuar push de um branch e criar uma pull request. Adicione restrições quando o projeto estiver ao lado de pastas confidenciais, não precisar de acesso à rede ou não deve usar suas credenciais.
Configurando a política de sandbox de um projeto
Uma política de sandbox é um conjunto de regras que controla quais arquivos, redes e credenciais as ferramentas executadas pelo agente podem acessar. As configurações do projeto descrevem a política que o aplicativo solicita quando uma sessão em área restrita é iniciada. A política efetiva pode ser mais restritiva, por exemplo, quando as configurações gerenciadas pela empresa se aplicam.
O "Resumo da política configurada" mostra as configurações de pasta, rede e credencial selecionadas. Ele não confirma se o sandbox está em execução ou mostra todas as restrições que se aplicam. As alterações são salvas automaticamente.
Nas configurações do projeto, você pode definir:
- Acesso ao sistema de arquivos: conceda acesso adicional de somente leitura ou de leitura/gravação a caminhos específicos, ou negue acesso a caminhos.
- Acesso à rede: permitir ou bloquear o acesso à Internet e à rede local de saída.
- Credenciais: Escolha se suas credenciais do Git e GitHub CLI estarão disponíveis dentro do sandbox.
Configurando o acesso ao sistema de arquivos
Por padrão, uma sessão em sandbox tem acesso de leitura e gravação ao seu espaço de trabalho e ao diretório de trabalho atual. Você pode conceder acesso a pastas adicionais ou impedir o acesso a pastas específicas.
Na seção "Sandbox" das configurações do projeto, defina qualquer uma das seguintes listas:
- Leitura/gravação adicional: pastas que as ferramentas executadas pelo agente podem ler e modificar.
- Somente leitura adicional: pastas que as ferramentas executadas pelo agente podem ler, mas não modificar.
- Negado: pastas que as ferramentas executadas pelo agente não podem acessar.
Para adicionar uma pasta, clique em Adicionar pasta para a lista apropriada e escolha a pasta. Para remover uma pasta, clique no ícone de exclusão ao lado de seu caminho.
Uma pasta negada mais específica permanece negada quando uma pasta pai mais ampla tem acesso de leitura ou gravação.
No Windows, você pode salvar um caminho negado nas configurações do projeto. Se os recursos ativos da sandbox do Windows não puderem garantir a negação, um comando executado na sandbox falhará com uma mensagem de política sem suporte. O comando não é executado quando um caminho negado está acessível ou sem sandbox.
Configurando o acesso à rede
Por padrão, ambas as configurações de rede são ativadas no aplicativo. Na seção "Sandbox" das configurações do projeto, você pode alterar as seguintes configurações:
- Internet de saída: permitir conexões com serviços de Internet, como GitHub e registros de pacotes.
- Rede local: permitir conexões de loopback e de rede local, incluindo conexões com servidores de desenvolvimento locais.
As restrições de rede podem afetar a instalação do pacote, chamadas à API, servidores de visualização e outras ferramentas que precisam de uma conexão de rede.
No Linux, os processos em sandbox não podem se conectar diretamente ao servidor no localhost do seu computador. A configuração de rede local ainda controla solicitações por meio do proxy local interno, bem como operações em processo, como solicitações da Web e conexões MCP remotas.
As limitações do sistema operacional descritas na configuração de configurações de rede também se aplicam ao aplicativo. Ao contrário da configuração de rede local do aplicativo, a configuração Permitir rede local da CLI é desativada por padrão.
Como configurar credenciais
Por padrão, operações autenticadas de Git e GitHub CLI estão disponíveis no sandbox. Você pode desativar qualquer uma das seguintes configurações:
- Credenciais do Git: permitir operações de Git HTTPS autenticadas.
- GitHub CLI credenciais: Permitir que GitHub CLI (
gh, nãocopilot) se autentique.
Desativar o acesso às credenciais pode impedir operações como fazer push de um branch ou criar um pull request de dentro do sandbox.
Aplicando alterações de política
As alterações nas configurações de sistema de arquivos, rede e credencial se aplicam a novas sessões ou quando uma sessão existente é reiniciada. Eles não alteram a política de uma sessão em execução no momento.
Para reiniciar uma sessão mantendo seu histórico, insira:
/restart-session
O aplicativo aceita as configurações de área restrita antes de verificar se o sistema operacional pode aplicá-las. O suporte é verificado quando o primeiro shell em área restrita é iniciado. Se o host não puder impor a política solicitada, o shell falha com uma mensagem "unsupported-platform" ou "unsupported-policy" e não é executado sem sandbox. Para encontrar as versões do Windows com suporte no momento, consulte Suporte do sistema operacional Windows para isolamento em sandbox do Copilot.
Se o aplicativo exibir Sandbox indisponível, resolva o problema relatado e clique em Tentar novamente a sandbox.
Configurar o Copilot CLI
Use o /sandbox comando barra para configurar o sandboxing local na CLI. Uma configuração gerenciada é rotulada (managed) na /sandbox interface e não pode ser alterada.
Abrindo a configuração do sandbox
-
Inicie uma Copilot CLI sessão.
-
Insira o comando barra
/sandbox.Isso abre uma interface de configuração interativa com quatro guias: Geral, Credenciais, Sistema de Arquivos e Rede. Use a tecla Tab para alternar entre as abas. Pressione Esc para salvar suas alterações e fechar a configuração. Se você estiver em um caminho, regra de host ou lista de variáveis mascaradas, pressione Esc primeiro para retornar à aba correspondente.
Configurando configurações gerais
A guia Geral define o comportamento da sandbox no nível superior. Quando as configurações gerenciadas pela empresa impõem um valor, a caixa de diálogo rotula a configuração como (managed) e impede que você a altere.
| Setting | Description |
|---|---|
| Ativar sandbox | Execute comandos de shell dentro da área restrita. Você também pode alternar isso com /sandbox enable e /sandbox disable. |
| Permitir ignorar o sandbox | Permita que o modelo solicite que cada comando individual seja executado fora da sandbox, mediante aprovação. Um prompt de bypass também pode permitir que você desabilite a área restrita para o restante da sessão atual. Ativado por padrão. Para obter mais informações, consulte Permitir ignorar a sandbox. |
| Servidores MCP em sandbox | Executar servidores MCP dentro do sandbox. Ativado por padrão. |
| Servidores LSP em sandbox | Execute servidores de linguagem (servidores LSP) dentro do sandbox. Ativado por padrão. |
Permitir contornar o sandbox
A configuração Permitir bypass de área restrita controla se Copilot pode solicitar permissão para tentar novamente um comando bloqueado com acesso mais amplo.
- On (default): para negações do sandbox com suporte, a CLI oferece um prompt de aprovação que descreve o comando e a nova tentativa proposta. A aprovação se aplica a essa tentativa. Você também pode optar por desabilitar o isolamento (sandboxing) pelo restante da sessão, se sua empresa permitir, ou dar Copilot outra instrução.
- Desativado: o comando permanece bloqueado. Você pode ajustar as configurações que controla ou solicitar a Copilot que adote uma abordagem diferente.
Um bypass só remove apenas os próprios limites de sandbox de Copilot, não os do seu sistema operacional. O comando ainda é executado em sua conta normal, portanto, ele não ganha privilégios de administrador nem acesso root e não pode alcançar nada que seu sistema já bloqueie.
Em hosts Windows com suporte, uma nova tentativa aprovada pode primeiro relaxar as restrições de arquivo e processo, mantendo as restrições de rede em vigor. Seu resultado é rotulado como "sandbox relaxada". Se o comando ainda estiver bloqueado, a CLI poderá usar o bypass completo descrito no mesmo prompt de aprovação. Esse resultado é rotulado como "sandbox ignorada".
Se as configurações gerenciadas da empresa forem definidas sandbox.allowBypass como false, você não poderá aprovar comandos individuais para serem executados fora da área restrita ou desabilitar a área restrita para o restante da sessão. Se as configurações gerenciadas exigirem isolamento, mas a política efetiva permitir contorná-lo, você não poderá desativá-lo por meio das configurações comuns, mas poderá desativá-lo pelo restante da sessão atual, seja por meio de um prompt ativo de permissão de bypass ou executando /sandbox disable, sem flexibilizar a política salva.
Configurando configurações de autenticação
A guia Credenciais controla a autenticação do Git e GitHub CLIe permite configurar variáveis de ambiente mascaradas. Os processos em área restrita recebem valores de marcador de posição. Um proxy local fornece as credenciais reais somente em cabeçalhos de solicitação HTTPS enviados para destinos aprovados. Assim como nas outras guias, um valor gerenciado pela empresa é mostrado como (managed) e não pode ser alterado.
| Setting | Description |
|---|---|
| Autenticar git | Permitir operações autenticadas de Git HTTPS com credenciais de placeholder, sem um helper de credenciais dentro da área restrita. O proxy fornece as credenciais reais apenas no host, na porta e no caminho do repositório originais. Ativado por padrão. |
| Autenticar gh | Forneça um espaço reservado GH_TOKEN para que GitHub CLI (gh, não copilot) possa se autenticar sem acessar suas credenciais armazenadas. O proxy fornece o token real apenas para github.com, api.github.come uploads.github.com. Ativado por padrão. |
| Variáveis de ambiente mascaradas | Escolha variáveis de ambiente adicionais para substituir por espaços reservados e os hosts HTTPS que podem receber seus valores reais. |
No macOS, o Acesso às Chaves é desativado por padrão. Para permitir que os comandos em área restrita usem o conjunto de chaves do sistema, defina sandbox.userPolicy.seatbelt.keychainAccess como true em seu arquivo pessoal settings.json. Essa opção não está disponível por meio /sandbox ou /settings.
Mascarando variáveis de ambiente
Use variáveis de ambiente mascaradas para permitir que as ferramentas em área restrita se autentiquem em uma API sem receber o token real. O mascaramento se aplica às variáveis selecionadas em comandos, servidores MCP locais e servidores de linguagem executados dentro da área restrita. O Git e a autenticação gh usam mascaramento automaticamente quando suas configurações de autenticação estão ativadas. Você não precisa adicionar entradas para elas.
Antes de configurar o mascaramento, defina a variável de ambiente no ambiente usado para iniciar Copilot CLI. O valor deve não estar vazio. As variáveis ausentes permanecem ausentes e os valores vazios não são mascarados.
O mascaramento só está ativo enquanto o sandbox local está habilitado. Adicionar uma variável mascarada não habilita o sandboxing.
- Insira
/sandbox enablepara habilitar o sandboxing local. - Insira
/sandbox statuse confirme se o sandboxing está habilitado para a sessão atual antes de continuar. - Insira
/sandboxe, em seguida, abra a guia Credenciais . - Selecione variáveis de ambiente mascaradas e pressione Enter.
- Pressione A para adicionar uma entrada.
- Em Variável, digite o nome da variável, como
EXAMPLE_API_TOKEN, em seguida, pressione Enter. Não insira o valor secreto. - Em Hosts de injeção, digite uma lista separada por vírgulas de hosts que podem receber o valor real, como
api.example.com, em seguida, pressione Enter. Use nomes de host ou subdomínios curinga, como*.example.com. Não inclua um esquema de URL, caminho, porta ou domínio simples*. - Pressione Esc para retornar à guia Credenciais .
- Em Windows, o mascaramento de credenciais requer uma versão do Windows que dê suporte ao proxy local da sandbox. Vá para a guia Rede e habilite Permitir rede local. Isso também permite o acesso à rede privada, sujeito às restrições de host configuradas.
- Pressione Esc para salvar e fechar a configuração.
Para editar uma entrada, selecione-a e pressione Enter. Para removê-lo, pressione X. O editor armazena apenas nomes de variáveis e hosts de destino. Ele não lê nem exibe valores secretos.
Você também pode configurar entradas em sandbox.credentials.envVars em seu arquivo pessoal settings.json. Por exemplo, essa entrada permite que o proxy forneça EXAMPLE_API_TOKEN apenas para api.example.com:
{
"sandbox": {
"enabled": true,
"credentials": {
"envVars": {
"EXAMPLE_API_TOKEN": {
"injectHosts": ["api.example.com"]
}
}
}
}
}
Adicionar um host de injeção não permite acesso à rede a ele. Suas configurações de rede também devem permitir a conexão. Os nomes de host exatos correspondem somente a esse host.
*.example.com corresponde aos subdomínios, mas não a example.com em si.
O mascaramento requer que uma variável permaneça no ambiente do processo filho. Não liste em --secret-env-vars uma variável que você deseja mascarar. Essa opção remove variáveis nomeadas dos ambientes de comando e do servidor MCP em vez de disponibilizá-las como espaços reservados.
Definindo as configurações do sistema de arquivos
A guia Sistema de Arquivos controla quais diretórios e arquivos o processo em área restrita pode acessar.
Por padrão, Copilot recebe permissão de leitura/gravação para tudo dentro e abaixo do diretório de trabalho atual. Se você estiver em um repositório Git, Copilot também será concedido:
- Permissão de leitura/gravação para tudo dentro e abaixo do diretório do
.gitrepositório. - Permissão de leitura para todos os demais itens no repositório acima do diretório de trabalho atual. O próprio diretório de trabalho permanece com permissão de leitura e gravação, pois a permissão mais específica prevalece onde as duas se sobrepõem.
| Setting | Description |
|---|---|
| Incluir diretório de trabalho | Ativado por padrão. O diretório de trabalho atual (e o diretório .git do repositório que o contém, se houver) são adicionados automaticamente à lista de caminhos de leitura e gravação. Desmarque essa opção se você não quiser que o diretório de trabalho tenha acesso de leitura/gravação automaticamente e permita manualmente o acesso a caminhos específicos. |
| Permitir acesso à ferramenta de desenvolvimento | Ativado por padrão. Concede aos comandos em sandbox acesso de leitura à configuração e aos caches das ferramentas de desenvolvimento — incluindo os registries do gerenciador de pacotes e os tokens armazenados neles — e acesso de leitura e gravação aos caches de compilação compartilhados, para que instalações e compilações funcionem dentro do sandbox. Isso aparece como acesso à ferramenta de desenvolvimento no /sandbox policy relatório. Desative-o para exigir que esses locais sejam concedidos explicitamente. |
Importante
Desmarcar Incluir diretório de trabalho remove o acesso a tudo dentro e abaixo do diretório .git de um repositório Git. Como resultado, operações do Git, como status, add``commite diff falharão, a menos que você adicione manualmente acesso a esse diretório.
Adicionando regras de caminho do sistema de arquivos
Você pode especificar os caminhos que deseja adicionar à sandbox. Isso permite que você conceda acesso somente leitura ou leitura/gravação a diretórios e arquivos fora do diretório de trabalho. Você também pode negar o acesso para excluir diretórios e arquivos da área restrita.
-
Na guia Sistema de Arquivos , selecione caminhos configurados pelo usuário e pressione Enter.
-
Pressione A para adicionar uma nova regra de caminho.
-
Digite um arquivo ou caminho de diretório. Use um caminho absoluto , por exemplo,
/Users/octocat/projects/appno macOS ou linux ouC:\Users\octocat\projects\appem Windows. Em seguida, pressione Enter.Observação
A adição de um diretório inclui toda a subárvore. Não há suporte a curingas.
-
Use as teclas de seta para a esquerda e para a direita no teclado para navegar entre as opções de permissões: Leitura/Gravação, Somente Leitura, Negado. Em seguida, pressione Enter para selecionar uma opção.
Se o caminho em si for um link simbólico, selecionar Leitura/Gravação ou Somente Leitura também adicionará seu destino atual quando a CLI puder resolvê-lo. Isso não concede automaticamente acesso a destinos de outros links dentro de um diretório permitido.
Depois de adicionar caminhos de sistema de arquivos, você poderá editá-los ou excluí-los.
- Use as teclas de seta para cima e para baixo para selecionar um caminho.
- Pressione Enter para editar o caminho ou X para excluí-lo.
- Pressione Esc para retornar à guia Sistema de Arquivos . Pressione Esc novamente para salvar e fechar a configuração.
No Windows, os caminhos com acesso negado exigem uma versão compatível com essa restrição. Se o host não puder aplicá-los, o comando falhará com uma explicação em vez de executar com proteção mais fraca.
Definindo as configurações de rede
A aba Rede controla se os processos isolados em sandbox podem estabelecer conexões de rede.
| Setting | Description |
|---|---|
| Permitir conexões de saída | Ativado por padrão. Permite conexões de internet de saída, sujeitas a quaisquer regras de host. Desativá-lo também torna inativas as configurações de proxy e as regras de host. |
| Permitir rede local | Desativado por padrão. Controla o acesso local, como conexões com um servidor de desenvolvimento em seu computador. Seu efeito depende do seu sistema operacional, conforme descrito abaixo. |
| Regras de hospedagem | Permitir ou negar conexões a hosts específicos. Consulte Permitir ou bloquear hosts específicos. |
| Proxy remoto | Roteie o tráfego de saída da sandbox por meio de um proxy HTTP. Consulte Como rotear o tráfego por meio de um proxy HTTP. |
O acesso à rede local se comporta de forma diferente em cada sistema operacional:
| Sistema operacional | Efeito sobre comandos em sandbox |
|---|---|
| macOS | Com o acesso de saída ativado e sem proxy, regras de host ou mascaramento de credenciais, ative o acesso local para permitir que um comando se conecte a um servidor de desenvolvimento local. Deixá-lo desativado bloqueia conexões localhost, incluindo para um servidor que o comando inicia sozinho. Desativar o acesso de saída também bloqueia essas conexões. |
| Linux | Os comandos em área restrita usam seu próprio espaço de rede privado. Eles podem acessar os servidores iniciados lá, mas não podem se conectar diretamente aos servidores no localhost do seu computador. Com o acesso local habilitado e nenhum proxy remoto configurado, as solicitações por meio do proxy local interno podem alcançar o localhost do seu computador, sujeito a regras de host. |
| Windows | Ativar o acesso local permite o acesso à rede privada. As conexões com o localhost do host também exigem uma versão Windows que dê suporte a eles. Regras de proxy e host exigem que essa configuração esteja ativada. |
A configuração também se aplica às solicitações da Web internas da CLI em todas as plataformas. Se os servidores MCP Sandbox estiver habilitado, ele também se aplicará a conexões remotas do MCP. Permitir o acesso local permite que a ferramenta interna web_fetch acesse o localhost, mas não remove suas restrições separadas em outros endereços de rede privada.
O mascaramento de credenciais usa um proxy local mesmo quando você não configurou um proxy remoto ou regras de host. Isso inclui mascaramento automático para Git e autenticação gh, que é habilitado por padrão, e variáveis de ambiente mascaradas.
Quando um proxy local está ativo no macOS, ativar o acesso local permite que um comando ouça em uma porta, mas não permite que ele se conecte diretamente a essa própria porta. Um servidor escutando em todas as interfaces de rede pode ser acessado de outros dispositivos em sua rede. Em Windows, não suponha que um servidor dentro de uma área restrita com proxy seja acessível a partir do localhost do host.
Permitindo ou bloqueando hosts específicos
Use regras de host para restringir quais destinos os comandos em área restrita podem alcançar. As regras de host estão ativas somente enquanto o sandboxing e as conexões de saída estão habilitados.
Você pode especificar nomes de host, padrões de subdomínio curinga ou endereços IPv4 ou IPv6 individuais. Não há suporte para intervalos de endereços IP na notação CIDR, como 203.0.113.0/24.
- Na guia Rede, selecione Proxy e bloqueio e pressione Enter. Em seguida, selecione Regras de host e pressione Enter.
- Pressione a para adicionar uma regra.
- Digite um nome de host, um padrão de subdomínio curinga ou um endereço IP individual. Por exemplo, use
example.com,*.example.com,203.0.113.10ou2001:db8::10. Não inclua um esquema de URL, um caminho ou uma porta. Pressione Enter. - Use as teclas de seta para a esquerda e para a direita para escolher Permitir ou Negar e, em seguida, pressione Enter para adicionar a regra à lista. As novas regras têm como padrão Negar.
- Pressione Esc para retornar a Proxy e bloqueio e pressione Esc novamente para retornar à guia Rede. Pressione Esc mais uma vez para salvar suas alterações e fechar a configuração.
Para alterar uma regra, selecione-a e pressione Enter. Para removê-lo, pressione x. As regras marcadas (managed) não podem ser editadas ou removidas. As alterações são salvas quando você fecha as configurações.
Ao escolher regras, tenha o seguinte em mente:
- Um nome de host permitido corresponde somente àquele nome de host. Use
*.example.compara corresponder aos subdomínios dele, mas não ao próprioexample.com. Use*para corresponder a todos os hosts. - Um domínio negado também nega seus subdomínios. Por exemplo, negar
example.combloqueiaexample.comeapi.example.com. - Negar tem precedência sobre Permitir.
- Depois de adicionar uma regra Permitir , os hosts que não correspondem a uma entrada permitida são bloqueados, exceto para as entradas automáticas de localhost descritas abaixo. Sem regras de permissão, outros hosts permanecem permitidos, a menos que uma regra de negação ou outra restrição de rede os bloqueie.
- Com pelo menos uma regra Permitir, ativar tanto Permitir conexões de saída quanto Permitir rede local também permite
localhost,127.0.0.1e::1. Essas entradas são adicionadas à lista de permissões efetiva sem alterar suas regras salvas. Regras explícitas de Negar e listas de permissões corporativas ainda podem bloqueá-las. - As regras da empresa só podem restringir sua lista de permissões, nunca ampliá-la. Um host só é permitido quando suas regras e as regras corporativas permitem isso. Se nenhum dos hosts permitidos também for permitido pelas regras da empresa, nada será deixado para permitir. Cada host é então bloqueado. Esse é o único caso em que a adição de uma regra Allow termina em uma lista totalmente fechada. Copilot mostra esse estado na caixa de diálogo da área restrita e nos detalhes da política.
As regras de host usam um proxy local, mesmo que você não tenha configurado um proxy HTTP. No macOS e no Linux, o sandbox força todas as conexões por meio desse proxy, portanto, um programa não pode evitar suas regras de host conectando-se diretamente. Em Windows, a sandbox depende de programas que respeitam as configurações de proxy. Como resultado, os programas que ignoram as configurações de proxy no Windows podem se conectar diretamente e contornar suas regras de host.
Roteando o tráfego por meio de um proxy HTTP
Para enviar o tráfego de saída da área restrita por meio de um servidor proxy:
- Na guia Rede, selecione Proxy e bloqueio e pressione Enter. Em seguida, selecione Proxy remoto e pressione Enter.
- Insira a URL do proxy e, opcionalmente, um nome de usuário e uma senha.
Para remover o proxy, apague a URL.
Tenha o seguinte em mente:
- O proxy se aplica somente enquanto Permitir conexões de saída está ativada. Se você desativar as conexões de saída, o proxy será mantido em suas configurações, mas permanecerá inativo.
- Use uma URL HTTP ou HTTPS sem credenciais incorporadas. Insira credenciais nos campos Nome de Usuário e Senha separados. No Linux, use um endereço IPv4 ou um nome de host com suporte para IPv4 em vez de um endereço somente IPv6.
- A CLI armazena uma senha literal no repositório de credenciais do sistema operacional quando disponível, com um fallback de arquivo local. O arquivo de configurações contém uma referência ao segredo armazenado, não à senha.
- Você pode inserir
${VAR}ou$VARcomo o valor inteiro de Senha para usar, em vez disso, uma variável de ambiente. A variável deve estar disponível para a CLI. Se não estiver definido, nenhuma senha será fornecida e um proxy que requer autenticação poderá rejeitar a solicitação. - A CLI se conecta por meio de um proxy local interno, que mantém as credenciais de proxy upstream fora dos processos filho em área restrita. As regras de host também se aplicam quando você usa um proxy upstream.
- No macOS e no Linux, os programas em área restrita não podem ignorar o proxy conectando-se diretamente. Em Windows, a sandbox depende de programas que respeitam as configurações de proxy. Windows também requer também uma versão com suporte e Permitir rede local, que também permite acesso à rede privada.
- Sua organização pode impor a URL do proxy por meio de configurações gerenciadas. Quando isso acontece, a URL é mostrada como
(managed), mas você ainda pode fornecer seu próprio nome de usuário e senha.
Habilitar e desabilitar a sandbox rapidamente
Você pode ativar ou desativar o sandbox sem abrir a interface de configuração completa:
- Habilitar: insira
/sandbox enablena sessão Copilot CLI. - Desativar: insira
/sandbox disablena sessão Copilot CLI.
Normalmente, esses comandos alteram a configuração Habilitar sandbox salva. Se as configurações gerenciadas exigirem sandbox e permitirem bypass, em vez disso, /sandbox disable desativa o sandbox somente para a sessão atual. Executar /sandbox enable o restaura para essa sessão.
Visualizando suas configurações atuais da sandbox
As configurações são armazenadas em settings.json, sob a chave sandbox, no diretório de configuração Copilot CLI. Não há suporte para configurações de sandbox em arquivos de configurações no nível do repositório. As configurações gerenciadas pela empresa podem restringir suas escolhas. Para obter mais informações sobre o diretório de configuração, consulte Diretório de configuração do GitHub Copilot CLI.
Você pode visualizar as configurações atuais da sandbox em uma sessão Copilot CLI.
- Insira
/settings. - Pressione / para pesquisar as configurações.
- Digite
sandboxpara filtrar a lista de configurações.
As etapas acima mostram as configurações salvas. Para ver a política efetiva , os caminhos, as configurações de rede e os recursos que resultam depois que as configurações, as concessões automáticas e qualquer política gerenciada forem combinadas, insira /sandbox policy. Você pode adicionar um comando, como /sandbox policy npm install, para inspecionar o acesso à ferramenta de desenvolvedor sem executá-lo. Para obter mais informações, consulte Noções básicas sobre políticas de sistema de arquivos para área restrita local em GitHub Copilot CLI.