# Usando isolamento local

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

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

> \[!IMPORTANT]
> 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 Copilot CLI com a opção `‑‑experimental` de linha de comando ou insira `/experimental on` durante uma sessão.

Quando você habilita o sandboxing local, Copilot CLI executa a maioria dos comandos e ferramentas que ele invoca em seu nome dentro de uma área restrita do sistema operacional. Depois de ativar o sandboxing local, ele será usado em todas as suas sessões Copilot CLI até você desativá-lo ou desligá-lo para uma sessão específica. Se as configurações gerenciadas da empresa exigirem isolamento em sandbox, a configuração normal, a opção de linha de comando `--no-sandbox` e o comando `/sandbox disable` não poderão desabilitá-lo. No entanto, se a política em vigor permitir ignorar a sandbox, você poderá desativar explicitamente a sandbox pelo restante da sessão atual a partir de um prompt ativo de permissão para ignorá-la.

Por padrão, comandos e ferramentas em sandbox podem gravar no diretório de trabalho atual e em pastas temporárias. O diretório do perfil do usuário (home), juntamente com os locais do sistema e das ferramentas, são somente de leitura. Outros locais de disco são bloqueados. Em um repositório Git, o restante do repositório acima do diretório de trabalho atual é legível, mas não gravável. O acesso à sua rede local e privada é permitido, assim como o acesso à Internet de saída.

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

Para obter uma visão geral conceitual do sandboxing em Copilot CLI, consulte [Sobre a nuvem e as áreas restritas locais para GitHub Copilot](/pt/copilot/concepts/about-cloud-and-local-sandboxes).

## Comandos de sandbox

Você gerencia o isolamento local em uma sessão Copilot CLI usando o comando de barra `/sandbox`. Possui os seguintes subcomandos.

| Command            | Descrição                                                                                                                                                                                                                                                                                                                                                                |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `/sandbox status`  | Mostre se o sandboxing está sendo usado para a sessão no momento. Consulte [como verificar se o sandbox está sendo usado](#checking-whether-sandboxing-is-being-used).                                                                                                                                                                                                   |
| `/sandbox policy`  | Mostre a política efetiva do sistema de arquivos para o diretório atual: os caminhos legíveis, graváveis ou bloqueados e o acesso à rede em vigor. 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](/pt/copilot/concepts/agents/copilot-cli/understanding-local-sandboxing). |
| `/sandbox config`  | Abra a interface de configurações interativas. Inserir `/sandbox` sozinho tem o mesmo efeito. Para obter mais informações, consulte [Configurando as configurações locais da sandbox](/pt/copilot/how-tos/cloud-and-local-sandboxes/configuring-local-sandbox-settings).                                                                                                 |
| `/sandbox enable`  | Ative o isolamento local. Consulte [Como ativar o sandbox local](#enabling-local-sandboxing).                                                                                                                                                                                                                                                                            |
| `/sandbox disable` | Desative o isolamento local. Se as configurações gerenciadas pela empresa exigirem área restrita, isso será recusado. Consulte [Desabilitando o sandboxing local](#disabling-local-sandboxing).                                                                                                                                                                          |

## Habilitando o sandboxing local

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

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

> \[!NOTE]
> 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

Se as configurações gerenciadas pela empresa exigirem isolamento em sandbox, `/sandbox disable` é recusado. Se a política efetiva permitir ignorar a sandbox, você poderá, em vez disso, desativá-la explicitamente pelo restante da sessão atual a partir de um prompt ativo de permissão para ignorar a sandbox.

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

```shell copy
/sandbox disable
```

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

Sua escolha de usar ou não o isolamento local é salva como a configuração `sandbox.enabled` no seu arquivo de configuração pessoal 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` . A opção `--no-sandbox` não pode sobrepor configurações empresariais gerenciadas que exigem 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 copy
copilot --sandbox -p "PROMPT"
```

## Executar um único comando fora da sandbox

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. É mostrado um prompt de confirmação que descreve o comando. Você pode aprovar esse único comando, mantê-lo dentro da área restrita ou desabilitar a área restrita para o restante da sessão atual. A opção de desativação da sessão está disponível apenas durante a resposta a um prompt ativo de bypass e somente se a política efetiva permitir o bypass do sandbox.

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 local está sendo usado para a sessão atual, insira:

```shell copy
/sandbox status
```

Copilot CLI informa se o sandboxing está habilitado para a sessão. Se as configurações gerenciadas da sua organização exigirem isolamento em sandbox, o status também indicará isso. Como o status reflete o que a sessão realmente aplica, esta é a forma confiável de confirmar se os comandos que Copilot executa estão sendo executados em sandbox.

Para ver não apenas se o isolamento em sandbox está habilitado, mas exatamente quais caminhos podem ser lidos, gravados ou bloqueados, digite `/sandbox policy`. 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](/pt/copilot/concepts/agents/copilot-cli/understanding-local-sandboxing).

Você também pode ver de imediato o status do sandbox na linha de status, que contém `sandbox enabled` quando o modo sandbox está sendo usado. A exibição das informações da sandbox na linha de status é ativada por padrão. Se ele tiver sido 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 <kbd>Enter</kbd> para alternar a configuração até que ela exiba uma marca de seleção.

## Leitura adicional

* [Sobre a nuvem e as áreas restritas locais para GitHub Copilot](/pt/copilot/concepts/about-cloud-and-local-sandboxes)
* [Configurando as configurações locais da sandbox](/pt/copilot/how-tos/cloud-and-local-sandboxes/configuring-local-sandbox-settings)