> ## Documentation Index
> Fetch the complete documentation index at: https://dokumentasiopenclaw.overthinkingku.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sandbox & Alat Multi-Agen

# Konfigurasi Sandbox & Alat Multi-Agen

## Ringkasan

Setiap agen dalam pengaturan multi-agen kini dapat memiliki:

* **Konfigurasi Sandbox** sendiri (`agents.list[].sandbox` menimpa `agents.defaults.sandbox`).
* **Pembatasan Alat** sendiri (`tools.allow` / `tools.deny`, ditambah `agents.list[].tools`).

Ini memungkinkan Anda menjalankan beberapa agen dengan profil keamanan yang berbeda:

* Asisten pribadi dengan akses penuh.
* Agen keluarga/kerja dengan alat yang dibatasi.
* Agen publik yang berjalan di dalam sandbox.

Autentikasi bersifat per agen: setiap agen membaca dari penyimpanan autentikasinya sendiri di `agentDir`. Kredensial **tidak** dibagikan antar agen.

Untuk penjelasan tentang perilaku sandbox saat runtime, lihat [Sandboxing](/id-ID/gateway/sandboxing).

***

## Contoh Konfigurasi

### Contoh 1: Agen Pribadi + Agen Keluarga yang Dibatasi

```json theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  "agents": {
    "list": [
      {
        "id": "main",
        "name": "Asisten Pribadi",
        "sandbox": { "mode": "off" }
      },
      {
        "id": "family",
        "name": "Bot Keluarga",
        "sandbox": {
          "mode": "all",
          "scope": "agent"
        },
        "tools": {
          "allow": ["read"],
          "deny": ["exec", "write", "edit", "apply_patch", "process", "browser"]
        }
      }
    ]
  }
}
```

***

## Urutan Prioritas Konfigurasi

Ketika konfigurasi global (`agents.defaults.*`) dan spesifik agen (`agents.list[].*`) keduanya ada:

### Konfigurasi Sandbox

Pengaturan spesifik agen akan menimpa pengaturan global. Misalnya, `agents.list[].sandbox.mode` memiliki prioritas lebih tinggi daripada `agents.defaults.sandbox.mode`.

### Pembatasan Alat

Urutan penyaringan adalah:

1. Profil Alat (`tools.profile`)
2. Kebijakan Alat Global (`tools.allow` / `tools.deny`)
3. Kebijakan Alat Per Agen (`agents.list[].tools.allow/deny`)
4. Kebijakan Alat Sandbox

Setiap level dapat membatasi lebih lanjut, tetapi tidak dapat mengizinkan kembali alat yang sudah ditolak di level sebelumnya.

### Grup Alat (Singkatan)

Kebijakan alat mendukung penggunaan `group:*` untuk mempermudah konfigurasi:

* `group:runtime`: `exec`, `bash`, `process`
* `group:fs`: `read`, `write`, `edit`, `apply_patch`
* `group:messaging`: `message`
* `group:ui`: `browser`, `canvas`

***

## Perangkap Umum: "non-main"

Opsi `agents.defaults.sandbox.mode: "non-main"` didasarkan pada kunci sesi (`session.mainKey`), bukan ID agen. Sesi grup/saluran selalu mendapatkan kunci uniknya sendiri, sehingga akan diperlakukan sebagai "non-main" dan akan dimasukkan ke dalam sandbox. Jika Anda ingin agen tertentu tidak pernah menggunakan sandbox, setel `agents.list[].sandbox.mode: "off"`.

***

## Pemecahan Masalah

### Agen tidak masuk sandbox padahal `mode: "all"`

Periksa apakah ada pengaturan `agents.defaults.sandbox.mode` global yang menimpanya atau pastikan pengaturan spesifik agen sudah benar.

### Alat masih tersedia padahal sudah masuk daftar cekal (deny)

Ingat urutan penyaringan: Global → Agen → Sandbox. Setiap level hanya bisa memperketat pembatasan.
