Claude Platform Docs
Managed AgentsKonfigurasi lingkungan agen

Penyiapan environment cloud

Sesuaikan sandbox cloud untuk sesi Anda.

Environment (lingkungan) mendefinisikan konfigurasi sandbox tempat agen Anda berjalan. Anda membuat environment satu kali, lalu mereferensikan ID-nya setiap kali Anda memulai sesi. Beberapa sesi dapat berbagi environment yang sama, tetapi setiap sesi mendapatkan sandbox terisolasinya sendiri (container Linux baru).

Halaman ini membahas environment type: cloud. Untuk menjalankan sandbox di infrastruktur Anda sendiri, lihat Sandbox self-hosted.

Membuat environment

ant apply environment.yaml
environment.yaml
# yaml-language-server: $schema=https://platform.claude.com/schemas/ant/beta/environment.json
name: python-dev
config:
  type: cloud
  networking:
    type: limited
    allow_package_managers: true

ant apply membuat lingkungan dari environment.yaml, mencetak ID-nya, dan mencatatnya di claude-lock.json. Commit claude-lock.json agar ant apply berikutnya memperbarui lingkungan ini alih-alih mencoba membuatnya lagi.

Gunakan name yang unik dan deskriptif agar Anda dapat membedakan environment satu dengan lainnya.

Menggunakan environment dalam sesi

Teruskan ID environment sebagai string saat membuat sesi.

session = client.beta.sessions.create(
    agent=agent.id,
    environment_id=environment.id,
)

Opsi konfigurasi

Paket

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 environment yang sama. Ketika beberapa package manager ditentukan, mereka dijalankan dalam urutan alfabetis (apt, cargo, gem, go, npm, pip). Anda dapat secara opsional mengunci versi tertentu. Paket yang tidak dikunci akan menginstal versi terbaru. Jika environment menggunakan jaringan limited, atur juga networking.allow_package_managers ke true; jika tidak, permintaan akan ditolak dengan error 400.

ant apply environment.yaml
environment.yaml
# yaml-language-server: $schema=https://platform.claude.com/schemas/ant/beta/environment.json
name: data-analysis
config:
  type: cloud
  packages:
    pip:
      - pandas
      - numpy
      - scikit-learn
    npm:
      - express
  networking:
    type: unrestricted

Package manager yang didukung:

FieldManajer paketContoh
aptPaket sistem (apt-get)"graphviz"
cargoRust (cargo)"hyperfine@1.18.0"
gemRuby (gem)"rails:7.1.0"
goModul Go"golang.org/x/tools/cmd/goimports@latest"
npmNode.js (npm)"express@4.18.0"
pipPython (pip)"sqlalchemy==2.0.30"

Jaringan

Field networking mengontrol akses jaringan keluar dari sandbox. Field ini tidak memengaruhi alat web_search atau web_fetch, yang berjalan di server Anthropic; untuk membatasi situs yang dapat dijangkau alat-alat tersebut, atur allowed_domains atau blocked_domains pada entri alat tersebut di toolset agen. Lihat Membatasi domain web search dan web fetch.

ModeDeskripsi
unrestrictedAkses jaringan keluar penuh, kecuali untuk blocklist keamanan umum. Ini adalah default.
limitedMembatasi 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 environment dengan jaringan limited:

ant apply environment.yaml
environment.yaml
# yaml-language-server: $schema=https://platform.claude.com/schemas/ant/beta/environment.json
name: api-access
config:
  type: cloud
  networking:
    type: limited
    allowed_hosts:
      - api.example.com
    allow_mcp_servers: true
    allow_package_managers: true

Saat menggunakan jaringan limited:

  • allowed_hosts menentukan domain yang dapat dijangkau sandbox. Tentukan hostname saja 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 false.
  • allow_package_managers mengizinkan akses keluar ke sekumpulan registry paket publik dan host kode di luar yang tercantum dalam array allowed_hosts. Lihat Host package manager untuk daftarnya. Default-nya false. Atur ke true setiap kali environment menentukan packages; jika tidak, permintaan akan ditolak dengan error 400, bahkan jika host registry tercantum di allowed_hosts.

Host package manager

Ketika allow_package_managers bernilai true, sandbox dapat menjangkau host berikut selain yang ada di allowed_hosts. Anthropic memelihara daftar ini dan dapat mengubahnya.

EkosistemHost
Hosting kodegithub.com, api.github.com, codeload.github.com, raw.githubusercontent.com, objects.githubusercontent.com, release-assets.githubusercontent.com, gitlab.com, bitbucket.org
Node.jsregistry.npmjs.org, registry.yarnpkg.com, nodejs.org
Pythonpypi.org, files.pythonhosted.org
Rustcrates.io, index.crates.io, static.crates.io, static.rust-lang.org
Goproxy.golang.org, sum.golang.org
Javarepo1.maven.org, repo.maven.apache.org, services.gradle.org, plugins.gradle.org, plugins-artifacts.gradle.org
Rubyrubygems.org, index.rubygems.org
PHPpackagist.org, repo.packagist.org
Ubuntu (apt)archive.ubuntu.com, security.ubuntu.com, ppa.launchpad.net
Containerregistry-1.docker.io, auth.docker.io, production.cloudflare.docker.com, download.docker.com, ghcr.io

Siklus hidup environment

  • Environment tetap ada hingga diarsipkan atau dihapus secara eksplisit.
  • Setiap sesi mendapatkan instance sandbox-nya sendiri, bahkan ketika beberapa sesi mereferensikan environment yang sama. Sesi tidak berbagi state filesystem.
  • Environment tidak memiliki versi. Jika Anda sering memperbarui environment, simpan catatan perubahan Anda sendiri agar Anda dapat mengetahui konfigurasi mana yang digunakan setiap sesi.

Mengelola environment

# List environments
environments = client.beta.environments.list()

# Retrieve a specific environment
env = client.beta.environments.retrieve(environment.id)

# Archive an environment (read-only, existing sessions continue)
client.beta.environments.archive(environment.id)

# Delete an environment (only if no sessions reference it)
client.beta.environments.delete(environment.id)

Runtime pra-instal

Sandbox cloud sudah menyertakan runtime bahasa umum, database, dan alat command-line secara bawaan. Lihat Referensi sandbox cloud untuk daftar lengkapnya.

Langkah selanjutnya

Paket, database, dan utilitas pra-instal yang tersedia di sandbox cloud.

Buat sesi untuk menjalankan agen Anda dan mulai menjalankan tugas.

Was this page helpful?