Skip to main content

Usando área restrita local

Habilite o sandboxing local para que CLI do Copilot execute os comandos e as ferramentas que ele invoca em seu nome dentro de uma área restrita do sistema operacional.

Observação

As áreas restritas locais estão GitHub Copilot dentro prévia pública e sujeitas a alterações.

Importante

O sandboxing local em Windows requer uma compilação Windows Insiders.

Sobre o sandboxing local

Atualmente, o sandboxing é um recurso experimental. Para usá-lo, comece CLI do Copilot com a opção ‑‑experimental de linha de comando ou insira /experimental on durante uma sessão.

Quando você habilita o sandboxing local, CLI do Copilot executa a maioria dos comandos e ferramentas que ele invoca em seu nome dentro de uma área restrita do sistema operacional. Depois de habilitar o sandboxing local, ele será usado para todas as sessões CLI do Copilot até desabilitá-lo ou desativá-lo para uma sessão específica.

Por padrão, as ferramentas e comandos em área restrita podem ser gravados em seu diretório de trabalho atual e pastas temporárias. O diretório do perfil do usuário (página inicial), juntamente com os locais do sistema e da ferramenta, são somente leitura. Outros locais de disco são bloqueados. Em um repositório Git, o acesso acima do diretório de trabalho atual varia de acordo com o sistema operacional. O acesso à sua rede local e privada é permitido, assim como o acesso à Internet de saída.

Por padrão, as operações de Git e GitHub CLI (gh) autenticadas continuam funcionando dentro da área restrita, pois CLI do Copilot disponibilizam suas GitHub credenciais para comandos em área restrita. Isso permite que ações como git push e gh pr create tenham êxito. Você pode desativar isso em suas configurações de área restrita.

Para obter uma visão geral conceitual do sandboxing, CLI do Copilotconsulte Sobre a nuvem e as áreas restritas locais para GitHub Copilot.

Habilitando o sandboxing local

Para habilitar o sandboxing local, insira o seguinte comando em uma sessão interativa CLI do Copilot :

Shell
/sandbox enable

O sandboxing começa a ser usado imediatamente para a sessão atual.

Depois de habilitar o sandboxing local, ele continuará a ser usado para as sessões interativas atuais e futuras e para sessões programáticas.

Observação

Se você tiver outras sessões abertas ao entrar /sandbox enable, o sandboxing não será usado imediatamente nessas sessões. Para usar o sandboxing em uma sessão já aberta, faça um dos seguintes procedimentos nessa sessão:

  • Feche a sessão e reinicie-a, por exemplo, executando copilot --continue.
  • Insira /sandbox enable.

Desabilitando o sandboxing local

Para parar de usar o sandboxing local, insira o seguinte comando em uma sessão interativa CLI do Copilot :

Shell
/sandbox disable

O sandboxing não é mais usado na sessão atual ou em sessões novas e reiniciadas.

Sua escolha de usar a área restrita local é salva como a sandbox.enabled configuração no arquivo de configurações pessoais da CLI (~/.copilot/settings.json por padrão).

Usando o sandboxing para uma única sessão

Você pode usar a opção --sandbox de linha de comando para usar o sandboxing para uma única sessão, sem habilitar o sandboxing para suas outras sessões. Se o sandboxing já estiver habilitado, você poderá desabilitá-lo para uma única sessão usando a opção --no-sandbox .

Você pode combinar essas opções com a opção -p de linha de comando para controlar o sandboxing para uso programático da CLI. Por exemplo:

Shell
copilot --sandbox -p "PROMPT"

Executando um único comando fora da área restrita

Quando um comando precisa de acesso mais amplo do que a área restrita permite, Copilot pode solicitar a execução desse único comando fora da área restrita. Você será mostrado um prompt de confirmação descrevendo o comando e ele será executado fora da área restrita somente se você aprová-lo; caso contrário, ele permanecerá em área restrita. O restante da sessão permanece em área restrita de qualquer maneira.

Esse comportamento é habilitado por padrão e pode ser desativado nas configurações da área restrita.

Verificando se o sandboxing está sendo usado

Para verificar se o sandboxing está sendo usado para a sessão atual, examine a linha de status. Se o sandboxing estiver sendo usado, a linha de status conterá sandbox enabled.

A exibição de informações de área restrita na linha de status é ativada por padrão. Se ele estiver desativado, você poderá ativá-lo novamente:

  1. Insira /statusline.
  2. Mova a seleção para baixo na lista de opções para área restrita.
  3. Pressione Enter para alternar a configuração para que ela mostre uma marca de seleção.

Leitura adicional