Tools
Mode dengan hak istimewa tinggi
Saat agen berjalan di dalam lingkungan terisolasi, perintah exec-nya dibatasi pada
lingkungan terisolasi tersebut. Mode elevated memungkinkan agen keluar dan menjalankan perintah
di luar lingkungan terisolasi, dengan gerbang persetujuan yang dapat dikonfigurasi.
Direktif
Kendalikan mode elevated per sesi dengan perintah slash:
| Direktif | Fungsinya |
|---|---|
/elevated on |
Jalankan di luar sandbox pada jalur host yang dikonfigurasi, pertahankan persetujuan |
/elevated ask |
Sama seperti on (alias) |
/elevated full |
Jalankan di luar sandbox pada jalur host yang dikonfigurasi dan lewati persetujuan |
/elevated off |
Kembali ke eksekusi yang dibatasi sandbox |
Juga tersedia sebagai /elev on|off|ask|full.
Kirim /elevated tanpa argumen untuk melihat level saat ini.
Cara kerjanya
Periksa ketersediaan
Elevated harus diaktifkan di konfigurasi dan pengirim harus ada di allowlist:
{
tools: {
elevated: {
enabled: true,
allowFrom: {
discord: ["user-id-123"],
whatsapp: ["+15555550123"],
},
},
},
}
Atur level
Kirim pesan yang hanya berisi direktif untuk mengatur default sesi:
/elevated full
Atau gunakan secara inline (hanya berlaku untuk pesan tersebut):
/elevated on run the deployment script
Perintah berjalan di luar sandbox
Dengan elevated aktif, panggilan exec keluar dari sandbox. Host efektif adalah
gateway secara default, atau node saat target exec yang dikonfigurasi/sesi adalah
node. Dalam mode full, persetujuan exec dilewati. Dalam mode on/ask,
aturan persetujuan yang dikonfigurasi tetap berlaku.
Urutan resolusi
- Direktif inline pada pesan (hanya berlaku untuk pesan tersebut)
- Override sesi (diatur dengan mengirim pesan yang hanya berisi direktif)
- Default global (
agents.defaults.elevatedDefaultdi konfigurasi)
Ketersediaan dan allowlist
- Gerbang global:
tools.elevated.enabled(harustrue) - Allowlist pengirim:
tools.elevated.allowFromdengan daftar per kanal - Gerbang per agen:
agents.list[].tools.elevated.enabled(hanya dapat semakin membatasi) - Allowlist per agen:
agents.list[].tools.elevated.allowFrom(pengirim harus cocok dengan global + per agen) - Fallback Discord: jika
tools.elevated.allowFrom.discorddihilangkan,channels.discord.allowFromdigunakan sebagai fallback - Semua gerbang harus lolos; jika tidak, elevated dianggap tidak tersedia
Format entri allowlist:
| Prefiks | Cocok dengan |
|---|---|
| (tidak ada) | ID pengirim, E.164, atau kolom From |
name: |
Nama tampilan pengirim |
username: |
Nama pengguna pengirim |
tag: |
Tag pengirim |
id:, from:, e164: |
Penargetan identitas eksplisit |
Yang tidak dikendalikan elevated
- Kebijakan tool: jika
execditolak oleh kebijakan tool, elevated tidak dapat menimpanya. - Kebijakan pemilihan host: elevated tidak mengubah
automenjadi override lintas-host bebas. Elevated menggunakan aturan target exec yang dikonfigurasi/sesi, memilihnodehanya saat target sudahnode. - Terpisah dari
/exec: direktif/execmenyesuaikan default exec per sesi untuk pengirim resmi dan tidak memerlukan mode elevated.