Lingkungan mendefinisikan konfigurasi sandbox tempat agen Anda berjalan. Anda membuat lingkungan satu kali, lalu mereferensikan ID-nya setiap kali Anda memulai sesi. Beberapa sesi dapat berbagi lingkungan yang sama, tetapi setiap sesi mendapatkan sandbox terisolasinya sendiri (kontainer Linux yang baru).
Halaman ini membahas lingkungan type: cloud. Untuk menjalankan sandbox pada infrastruktur Anda sendiri, lihat Sandbox yang di-host sendiri.
Semua permintaan Managed Agents API memerlukan beta header managed-agents-2026-04-01. SDK menetapkan beta header tersebut secara otomatis.
ant beta:environments create \
--name "python-dev" \
--config '{type: cloud, networking: {type: unrestricted}}'Gunakan name yang unik dan deskriptif agar Anda dapat membedakan antar lingkungan.
Teruskan ID lingkungan sebagai string saat membuat sesi.
ant beta:sessions create \
--agent "$AGENT_ID" \
--environment-id "$ENVIRONMENT_ID"Field packages melakukan pra-instalasi paket ke dalam sandbox sebelum agen dimulai. Paket diinstal oleh package manager masing-masing dan di-cache di seluruh sesi yang berbagi lingkungan yang sama. Ketika beberapa package manager ditentukan, mereka dijalankan dalam urutan alfabetis (apt, cargo, gem, go, npm, pip). Anda dapat secara opsional menyematkan versi tertentu. Paket yang tidak disematkan akan menginstal versi terbaru.
ant beta:environments create <<'YAML'
name: data-analysis
config:
type: cloud
packages:
pip:
- pandas
- numpy
- scikit-learn
npm:
- express
networking:
type: unrestricted
YAMLPackage manager yang didukung:
| Field | Package manager | Contoh |
|---|---|---|
apt | Paket sistem (apt-get) | "ffmpeg" |
cargo | Rust (cargo) | "[email protected]" |
gem | Ruby (gem) | "rails:7.1.0" |
go | Modul Go | "golang.org/x/tools/cmd/goimports@latest" |
npm | Node.js (npm) | "[email protected]" |
pip | Python (pip) | "pandas==2.2.0" |
Field networking mengontrol akses jaringan keluar dari sandbox. Field ini tidak memengaruhi domain yang diizinkan untuk alat web_search atau web_fetch.
| Mode | Deskripsi |
|---|---|
unrestricted | Akses jaringan keluar penuh, kecuali untuk daftar blokir keamanan umum. Ini adalah default. |
limited | Membatasi akses jaringan sandbox ke host yang ada di allowed_hosts. Atur allow_package_managers dan allow_mcp_servers ke true untuk mengizinkan akses tambahan. |
Contoh berikut membuat lingkungan dengan jaringan limited:
ant beta:environments create <<'YAML'
name: api-access
config:
type: cloud
networking:
type: limited
allowed_hosts:
- api.example.com
allow_mcp_servers: true
allow_package_managers: true
YAMLUntuk deployment produksi, gunakan jaringan limited dengan daftar allowed_hosts yang eksplisit. Ikuti prinsip hak istimewa paling rendah (least privilege) dengan hanya memberikan akses jaringan minimum yang dibutuhkan agen Anda, dan audit domain yang diizinkan secara berkala.
Saat menggunakan jaringan limited:
allowed_hosts menentukan domain yang dapat dijangkau oleh sandbox. Tentukan hostname biasa atau pola wildcard (seperti *.example.com). Jangan sertakan skema URL, port, atau path.allow_mcp_servers mengizinkan akses keluar ke endpoint server MCP yang dikonfigurasi pada agen, di luar yang tercantum dalam array allowed_hosts. Default-nya adalah false.allow_package_managers mengizinkan akses keluar ke registri paket publik (seperti PyPI dan npm) di luar yang tercantum dalam array allowed_hosts. Default-nya adalah false.# Daftar environment
ant beta:environments list
# Ambil environment tertentu
ant beta:environments retrieve --environment-id "$ENVIRONMENT_ID"
# Arsipkan environment (hanya-baca, sesi yang ada tetap berjalan)
ant beta:environments archive --environment-id "$ENVIRONMENT_ID"
# Hapus environment (hanya jika tidak ada sesi yang mereferensikannya)
ant beta:environments delete --environment-id "$ENVIRONMENT_ID"Sandbox cloud menyertakan runtime umum secara bawaan. Lihat Referensi sandbox cloud untuk daftar lengkap bahasa, database, dan utilitas yang sudah terinstal.
Paket, database, dan utilitas yang sudah terinstal dan tersedia di sandbox cloud.
Buat sesi untuk menjalankan agen Anda dan mulai menjalankan tugas.
Was this page helpful?