Antes de confiar no sandbox do agente, teste o que ele ainda consegue acessar
Você pede ao agente para corrigir um componente. Ele encontra uma configuração fora do repositório e tenta abrir o arquivo para “entender o ambiente”. Esse é um cenário de teste, não um incidente. Se a execução estiver isolada como você imagina, a leitura deve falhar. Se passar, o nome “sandbox” na interface não vai explicar por quê.
O GitHub anunciou a disponibilidade geral do sandbox local para o Copilot CLI, o app do Copilot e sessões do VS Code que usam Agent Host. As políticas podem limitar arquivos, rede, credenciais e algumas ferramentas locais. O anúncio não diz qual política está ativa na sua máquina, nem garante que todas essas superfícies compartilhem a mesma configuração. Antes de soltar o agente num repositório real, vale fazer um ensaio curto.
Desenhe a fronteira antes de pedir a tarefa
Use um projeto descartável, numa conta ou ambiente de teste sem credenciais pessoais. Anote o cliente e a versão em uso, a política efetivamente aplicada e o que você espera que aconteça:
- dentro do projeto: onde o agente pode ler e escrever;
- fora do projeto: um diretório de teste que ele não deveria alcançar;
- rede: se pode falar com a internet, com a rede local e com um serviço seu em
localhost; - ferramentas: quais comandos, extensões e servidores MCP locais ele consegue acionar;
- credenciais: se Git e GitHub CLI ficam acessíveis ou não, sem colocar tokens reais na prova.
Não copie a configuração de outra pessoa como se fosse o resultado do teste. CLI, app e sessão no editor podem ter caminhos de execução diferentes. Se o seu time usa mais de um, rode o mesmo ensaio em cada um.
Faça uma tentativa que deveria falhar
Prepare um arquivo com texto fictício fora da pasta liberada, mas ainda sob seu controle. Configure um endpoint local de teste que registre somente se recebeu uma conexão; não envie conteúdo do repositório. Aí peça ao agente uma tarefa pequena que exija ler um arquivo permitido e modificar outro dentro do projeto. Esse é o caso positivo: se ele falhar, sua política talvez esteja restrita demais para o trabalho.
Depois, tente as negativas separadamente. Peça uma leitura do arquivo fictício fora do escopo, uma escrita numa pasta proibida e uma chamada ao endpoint que a política deveria bloquear. Verifique o efeito no disco e no serviço de teste, não apenas a resposta do chat. Uma recusa educada do modelo não demonstra isolamento; você quer saber se a ferramenta foi impedida de executar a ação. Também observe se aparece um pedido de aprovação ou se alguma ferramenta contorna a fronteira esperada.
Guarde a política, a tarefa pedida, o resultado observado e as exceções concedidas. Se o teste exigir desligar o isolamento para instalar dependências ou abrir um preview, registre qual acesso foi liberado e volte a bloqueá-lo depois. “Permitir tudo até funcionar” resolve o erro de hoje, mas deixa o próximo comando com o mesmo alcance.
O sandbox termina antes da sua API
Mesmo um comando local bem isolado pode chamar uma API à qual a aplicação deu acesso. Nesse ponto, a decisão de autorização precisa estar no serviço: identidade própria para a execução, escopo de dados e ações permitido, credenciais mediadas quando necessário. O anúncio do GraphOS Agent Services, da Apollo, é um exemplo dessa separação entre agente e API; você não precisa adotar o produto para aplicar a regra. Um sandbox no computador não decide se uma operação no banco ou num serviço remoto deveria ser autorizada.
Há ainda a interface de aprovação. Se o agente monta um formulário para pedir confirmação, mostre o recurso afetado, a operação e a consequência antes do clique. “Autorizar” sem dizer o quê não ajuda muito. Para estudar padrões de componentes e interfaces geradas por agentes, um catálogo de recursos sobre Generative UI pode dar referências de implementação. A tela organiza a decisão humana; ela não concede permissão no servidor nem substitui a checagem da política.
Uma última cautela: o registro da execução pode conter caminhos locais, argumentos e saídas de ferramentas. Salve o suficiente para investigar uma negativa ou uma exceção, mas não transforme o log num depósito de código e segredos.
Comece com uma tarefa permitida e outra proibida num projeto descartável. Se você consegue explicar por que uma passou e a outra foi barrada, com evidência no disco e no endpoint de teste, já tem algo mais útil do que apenas a palavra “sandbox”.