Claude Platform Docs
Managed AgentsSandbox yang di-host sendiri

Sandbox yang di-host sendiri

Jalankan sesi Claude Managed Agents di sandbox yang di-host sendiri, sehingga eksekusi alat, file, dan lalu lintas jaringan keluar tetap berada di infrastruktur Anda sendiri.

"Self-hosted sandboxes" (sandbox yang di-host sendiri) memindahkan eksekusi alat agen dari sandbox cloud yang dikelola Anthropic ke infrastruktur yang Anda kendalikan, sementara Anthropic tetap menjalankan agen. Untuk mempelajari apa artinya dan memutuskan apakah ini cocok untuk agen Anda, lihat Memilih lingkungan agen.

Cara kerjanya

Lingkungan self_hosted berfungsi sebagai antrean kerja. Anda menjalankan environment worker (worker lingkungan), yaitu proses di infrastruktur Anda sendiri yang melayani antrean tersebut:

  1. Anda membuat sesi yang menargetkan lingkungan tersebut. Anthropic memasukkan sesi ke antrean sebagai item kerja.
  2. Worker Anda mengklaim item kerja dan mengunduh skill milik agen serta memory store milik sesi.
  3. Claude berjalan di sisi Anthropic dan meminta pemanggilan alat. Worker Anda menjalankan setiap pemanggilan secara lokal dan mengirimkan hasilnya kembali.

Input dan output alat tetap mengalir ke "control plane" (bidang kendali) Anthropic, sehingga model dapat melihat hasil dan menentukan langkah selanjutnya. Anthropic menyimpan skill dan memory store. Sandbox Anda menyimpan salinannya untuk sesi tersebut. Lihat Model keamanan untuk batas aliran data selengkapnya.

Sandbox yang di-host sendiri mendukung setiap model Claude yang tersedia di Managed Agents. Model dikonfigurasi pada agen, bukan pada lingkungan.

CLI ant serta SDK Python, TypeScript, dan Go menyertakan worker siap pakai. Penyedia sandbox seperti Cloudflare, Daytona, dan Modal juga menerbitkan panduan platform mereka sendiri.

Mulai cepat

Panduan mulai cepat ini menjalankan satu worker yang selalu aktif dengan CLI ant, mengirimkan sebuah sesi kepadanya, dan memastikan bahwa pemanggilan alat agen berjalan di host Anda.

Prasyarat

  • Sebuah agen: Jika Anda belum memilikinya, selesaikan Memulai dengan Claude Managed Agents terlebih dahulu dan catat ID agennya.
  • Sebuah host Linux: Host memerlukan /bin/bash tepat di path tersebut. Worker hanya memerlukan HTTPS keluar.
  • Sebuah kunci API Claude: Anda menggunakannya dari mesin Anda sendiri untuk membuat sesi dan membaca statistik antrean. Jangan simpan di host worker, karena pemanggilan alat agen dapat membacanya.
  • CLI ant atau SDK di mesin Anda sendiri: Langkah statistik dan sesi dalam panduan mulai cepat ini dijalankan di sana, bukan di host worker. Instal CLI dengan cara yang sama seperti langkah instalasi untuk worker, atau instal SDK.

Jalankan sesi pertama Anda

  1. Buat lingkungan yang di-host sendiri

    Di Claude Console, buka halaman Environments (platform.claude.com/environments), klik Create environment, dan di bawah Hosting pilih Self-hosted.

    Atau melalui API:

    ant apply environment.yaml
    environment.yaml
    # yaml-language-server: $schema=https://platform.claude.com/schemas/ant/beta/environment.json
    name: self-hosted
    config:
      type: self_hosted
  2. Buat kunci lingkungan

    Di Console, buka lingkungan tersebut dan klik Generate environment key. Kunci lingkungan mengautentikasi worker ke antreannya. Anda hanya dapat membuatnya di Console, bahkan untuk lingkungan yang Anda buat melalui API.

    Ekspor ID lingkungan dan kunci di host worker:

    export ANTHROPIC_ENVIRONMENT_KEY="sk-ant-oat01-..."
    export ANTHROPIC_ENVIRONMENT_ID="env_..."
  3. Instal CLI ant

    Jalankan ini di host worker.

    Untuk lingkungan Linux, unduh binary rilis secara langsung.

    VERSION=1.42.0
    OS=$(uname -s | tr '[:upper:]' '[:lower:]')
    case $(uname -m) in
      x86_64) ARCH=amd64 ;;
      aarch64) ARCH=arm64 ;;
    esac
    curl -fsSL "https://github.com/anthropics/anthropic-cli/releases/download/v${VERSION}/ant_${VERSION}_${OS}_${ARCH}.tar.gz" \
      | sudo tar -xz -C /usr/local/bin ant

    Anda dapat menemukan semua rilis di halaman rilis GitHub.

  4. Jalankan worker

    Buat direktori kerja, lalu jalankan worker. --workdir secara default menggunakan direktori saat ini, jadi berikan /workspace agar sesuai dengan default sistem.

    sudo mkdir -p /workspace && sudo chown "$USER" /workspace
    ant beta:worker poll --workdir /workspace

    Worker membaca dua variabel yang Anda ekspor dan melakukan polling hingga Anda menghentikannya.

  5. Verifikasi bahwa worker terhubung

    Di mesin Anda sendiri, atur ANTHROPIC_API_KEY ke kunci API Claude Anda (bukan kunci lingkungan) dan environment_id ke ID lingkungan. Pastikan bahwa workers_polling bernilai setidaknya 1:

    client = anthropic.Anthropic()
    
    stats = client.beta.environments.work.stats(environment_id)
    print(f"workers_polling={stats.workers_polling}")

    Jika workers_polling tetap bernilai 0, lihat Pemecahan masalah.

  6. Mulai sesi

    Atur agent_id ke ID agen Anda. Buat sesi yang menargetkan lingkungan tersebut, lalu kirimkan sebuah tugas:

    session = client.beta.sessions.create(
        agent=agent_id,
        environment_id=environment_id,
    )
    
    client.beta.sessions.events.send(
        session.id,
        events=[
            {
                "type": "user.message",
                "content": [
                    {
                        "type": "text",
                        "text": 'Write the output of "uname -a" to hello.txt in your working directory.',
                    },
                ],
            },
        ],
    )

    Sesi menunggu di antrean lingkungan hingga sebuah worker mengklaimnya. Jika tidak ada worker yang terhubung, sesi tetap berada dalam antrean alih-alih gagal.

  7. Pastikan alat berjalan di host Anda

    Di host worker, baca file yang ditulis oleh agen:

    cat /workspace/hello.txt

    File tersebut mendeskripsikan kernel host Anda sendiri, jadi pemanggilan alat agen berjalan di sana. Untuk mengikuti pekerjaan agen secara langsung, lihat Aliran event sesi.

Sumber daya sesi

Sandbox yang di-host sendiri hanya mendukung sumber daya memory_store. Sesi pada lingkungan yang di-host sendiri yang menyertakan sumber daya file atau github_repository akan ditolak dengan error 400:

Environment env_... is a self-hosted environment. `resources` are not supported with self-hosted environments.

Deployment yang menargetkan lingkungan yang di-host sendiri mengikuti aturan yang sama. Untuk memberikan file input tersendiri kepada sebuah sesi, lihat Menyiapkan file untuk sesi.

Sandbox yang di-host sendiri dan tunnel MCP

Hosting sendiri mengendalikan di mana kode agen dieksekusi. Tunnel MCP mengendalikan bagaimana Anthropic menjangkau server MCP di jaringan Anda. Keduanya independen:

  • Sesi di sandbox cloud Anthropic dapat menjangkau server MCP privat melalui tunnel. Misalnya, server MCP privat mungkin berada di depan database atau API internal di balik firewall Anda.
  • Sesi yang di-host sendiri dapat menggunakan server MCP melalui tunnel maupun server MCP publik.

Gunakan keduanya ketika Anda ingin eksekusi dan akses alat tetap berada di dalam batas Anda. Untuk melewati tunnel, bungkus server MCP sebagai alat kustom yang dilayani oleh worker Anda.

Panduan platform

Halaman-halaman ini menjelaskan cara membangun worker di platform sandboxing apa pun. Panduan khusus platform juga tersedia:

Langkah selanjutnya

Jalankan worker SDK, picu worker dari webhook, atau berikan sandbox tersendiri untuk setiap sesi.

Siapkan host, konfigurasikan sinkronisasi, dan tangani store hanya-baca serta konflik.

Layani alat Anda sendiri dari worker, termasuk alat dari server MCP di dalam jaringan Anda.

Baca kedalaman antrean, hentikan sesi dan worker dengan bersih, dan perbaiki kegagalan umum.

Flag CLI, variabel lingkungan, path sistem file, dan opsi helper SDK.

Model tanggung jawab bersama untuk lingkungan sandbox yang di-host sendiri.

Was this page helpful?