Pular para o conteúdo principal

Sandboxes de agentes de IA

Uma sandbox é um ambiente efêmero e isolado em que um agente de IA (ou você) executa código que não é de confiança: instala pacotes, roda testes, gera arquivos e sobe um servidor para mostrar o resultado. Ela pertence a um projeto, vive no máximo o tempo do seu plano e some sozinha no fim do prazo.

O que dá para fazer​

  • Criar uma sandbox a partir do catálogo (python-3.13, node-24, ubuntu-24.04-dev) ou de uma imagem assinada da sua organização.
  • Executar comandos com a saída em tempo real (stream), esperando o fim (sync, até 1 MiB de saída) ou em segundo plano (background).
  • Enviar e baixar arquivos do /workspace (até 100 MiB por chamada, ou um diretório inteiro como .tar.gz).
  • Abrir um terminal interativo pelo portal ou pela CLI.
  • Expor uma porta numa URL HTTPS temporária, protegida por token (ou pública, nos planos que permitem).
  • Pausar e retomar (planos com sandboxes.pause): o /workspace é guardado cifrado e volta numa sandbox nova.
  • Encerrar, ou deixar o prazo encerrar por você.

Pelo SDK Python ou TypeScript, pela CLI, por um assistente de IA via MCP, pela API ou pelo portal (Projeto › Sandboxes).

Isolamento​

Cada sandbox roda numa microVM própria. Dentro dela não há nenhuma credencial da plataforma, nenhum token do Kubernetes e nenhum acesso à rede do cluster. O detalhe da sandbox mostra o selo Isolamento por microVM.

Se a região não oferece microVM, o recurso fica indisponível nela: o portal mostra o aviso e a API recusa a criação (403 isolation.kind_not_available ou 409 isolation.tier_unavailable). A plataforma nunca cai para um isolamento mais fraco sem avisar.

Rede​

A rede da sandbox começa fechada: só DNS. Um administrador da organização cria perfis de rede em Configurações › Perfis de rede de sandbox:

ModoO que libera
BLOCKEDnada (padrão)
ALLOWLISTdomínios da lista (aceita curinga, ex.: *.pythonhosted.org) por um proxy da plataforma, e CIDRs públicos com portas
OPENa internet, menos faixas privadas e da plataforma (planos com sandboxes.openEgress)

Toda conexão de saída aparece na aba Rede da sandbox, permitida ou negada. Nos planos com sandboxes.environmentEdges, um perfil também pode liberar um serviço de um ambiente do mesmo projeto (por exemplo, o banco de staging), numa porta explícita: a sandbox recebe as variáveis CODA_EDGE_* com o endereço (os nomes antigos ATLAS_EDGE_* continuam presentes).

Prazo, ociosidade e limpeza​

  • O TTL é contado da criação e pode ser prorrogado até o teto do plano (sandboxes.maxLifetimeMinutes).
  • Uma sandbox ociosa (sem processos nem requisições nas portas) pelo tempo de ociosidade é pausada (se o plano permite) ou encerrada.
  • Se a organização for restrita, ou se a plataforma acionar o kill switch, todas as sandboxes são encerradas.
  • Se a microVM cair, a sandbox fica Interrompida e não volta sozinha: crie outra.

Limites e cobrança​

StarterProBusinessEnterprise
Sandboxes simultâneas21050200
vCPU / memória por sandbox2 / 2 GiB4 / 8 GiB8 / 16 GiB8 / 32 GiB
Duração máxima1 h6 h24 h24 h
vCPU·s por mês36 000720 0007 200 00036 000 000
Portas por sandbox152050
Porta pública, egress aberto, pausanãosimsimsim
Acesso a serviços do ambientenãonãosimsim

A cobrança é por segundo do recurso alocado (vCPU e memória) e por GB·hora de /workspace pausado. O uso aparece no detalhe da sandbox e em Organização › Uso de sandboxes. Com 80 % da cota mensal de vCPU·s você recebe um aviso; em 100 %, as sandboxes em execução são encerradas e novas criações recebem 422 quota.exceeded até a virada do mês ou a troca de plano.

Papéis e escopos​

AçãoPapel mínimo no projetoEscopo do token
Listar e ver sandboxes, portas, uso e eventos de redeViewersandboxes:read
Criar, encerrar, pausar, prorrogar, arquivos e portasDevelopersandboxes:write
Executar comandos e abrir terminalDevelopersandboxes:exec
Perfis de redeAdmin da organização (Viewer lê)sandboxes:write

Use uma conta de serviço para o agente, com só os escopos sandboxes:* e só o projeto dele.