Os ambientes definem a configuração do contêiner onde seu agente é executado. Você cria um ambiente uma vez e, em seguida, referencia seu ID cada vez que inicia uma sessão. Múltiplas sessões podem compartilhar o mesmo ambiente, mas cada sessão obtém sua própria instância de contêiner isolada.
Todas as solicitações da API Managed Agents requerem o cabeçalho beta managed-agents-2026-04-01. O SDK define o cabeçalho beta automaticamente.
ant beta:environments create \
--name "python-dev" \
--config '{type: cloud, networking: {type: unrestricted}}'O name deve ser único dentro da sua organização e espaço de trabalho.
Passe o ID do ambiente como uma string ao criar uma sessão.
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
)O campo packages pré-instala pacotes no contêiner antes do agente iniciar. Os pacotes são instalados pelos seus respectivos gerenciadores de pacotes e armazenados em cache entre sessões que compartilham o mesmo ambiente. Quando múltiplos gerenciadores de pacotes são especificados, eles são executados em ordem alfabética (apt, cargo, gem, go, npm, pip). Você pode opcionalmente fixar versões específicas; o padrão é a versão mais recente.
ant beta:environments create <<'YAML'
name: data-analysis
config:
type: cloud
packages:
pip:
- pandas
- numpy
- scikit-learn
npm:
- express
networking:
type: unrestricted
YAMLGerenciadores de pacotes suportados:
| Campo | Gerenciador de pacotes | Exemplo |
|---|---|---|
apt | Pacotes do sistema (apt-get) | "ffmpeg" |
cargo | Rust (cargo) | "[email protected]" |
gem | Ruby (gem) | "rails:7.1.0" |
go | Módulos Go | "golang.org/x/tools/cmd/goimports@latest" |
npm | Node.js (npm) | "[email protected]" |
pip | Python (pip) | "pandas==2.2.0" |
O campo networking controla o acesso à rede de saída do contêiner. Ele não afeta os domínios permitidos das ferramentas web_search ou web_fetch.
| Modo | Descrição |
|---|---|
unrestricted | Acesso total à rede de saída, exceto por uma lista de bloqueio geral de segurança. Este é o padrão. |
limited | Restringe o acesso à rede do contêiner à lista allowed_hosts. O acesso adicional é habilitado via os booleanos allow_package_managers e allow_mcp_servers. |
config = {
"type": "cloud",
"networking": {
"type": "limited",
"allowed_hosts": ["api.example.com"],
"allow_mcp_servers": True,
"allow_package_managers": True,
},
}Para implantações em produção, use rede limited com uma lista explícita de allowed_hosts. Siga o princípio do menor privilégio concedendo apenas o acesso mínimo de rede que seu agente requer, e audite regularmente seus domínios permitidos.
Ao usar rede limited:
allowed_hosts especifica os domínios que o contêiner pode acessar. Estes devem ter prefixo HTTPS.allow_mcp_servers permite acesso de saída aos endpoints do servidor MCP configurados no agente, além daqueles listados no array allowed_hosts. O padrão é false.allow_package_managers permite acesso de saída a registros de pacotes públicos (PyPI, npm, etc.) além daqueles listados no array allowed_hosts. O padrão é false.# List environments
ant beta:environments list
# Retrieve a specific environment
ant beta:environments retrieve --environment-id "$ENVIRONMENT_ID"
# Archive an environment (read-only, existing sessions continue)
ant beta:environments archive --environment-id "$ENVIRONMENT_ID"
# Delete an environment (only if no sessions reference it)
ant beta:environments delete --environment-id "$ENVIRONMENT_ID"Os contêineres em nuvem incluem runtimes comuns prontos para uso. Consulte a Referência de contêineres para a lista completa de linguagens, bancos de dados e utilitários pré-instalados.
Was this page helpful?