14 poin oleh xguru 2026-02-20 | Belum ada komentar. | Bagikan ke WhatsApp
  • "Bash for Agents" buatan Vercel
  • Lingkungan Bash virtual berbasis TypeScript yang dirancang untuk agen AI yang membutuhkan lingkungan bash yang aman dan tersandbox
  • Berjalan di atas filesystem virtual dalam memori (InMemoryFs), sebagai lingkungan eksekusi sandbox yang tidak memungkinkan akses ke disk nyata
  • Secara default akses jaringan diblokir, dan bila diperlukan mendukung permintaan jaringan aman berbasis URL yang diizinkan melalui curl
  • Hanya dapat mengakses filesystem yang disediakan, serta mencakup fitur pencegahan loop tak hingga dan eksekusi rekursif
    • Tidak mendukung eksekusi biner atau WASM
  • Saat menggunakan API, isolasi dilakukan per unit exec(), sehingga variabel lingkungan, fungsi, dan direktori kerja tidak dipertahankan antar pemanggilan (hanya status filesystem yang tetap ada)
  • Argumen pembuatan memungkinkan konfigurasi rinci seperti file awal, variabel lingkungan, direktori kerja, dan batas eksekusi
  • Mendukung lazy file loading, sehingga isi file dapat dibuat hanya saat diperlukan melalui fungsi sinkron/asinkron
  • Fitur perintah kustom (defineCommand) memungkinkan penambahan perintah kustom berbasis TypeScript
    • Melalui CommandContext, tersedia akses ke fs, cwd, env, stdin, exec
  • Menyediakan 4 implementasi filesystem
    • InMemoryFs: murni berbasis memori
    • OverlayFs: baca dari disk, tulis ke memori
    • ReadWriteFs: dapat membaca dan menulis ke disk nyata
    • MountableFs: menggabungkan beberapa filesystem ke dalam namespace terpadu dengan mount per path
  • Mendukung bash-tool sebagai alat integrasi AI SDK
    • Dirancang agar model AI dapat menjalankan perintah Bash dengan aman jika digabungkan dengan generateText()
  • Menyediakan API yang kompatibel dengan Vercel Sandbox
    • Dapat digunakan melalui kelas Sandbox dengan antarmuka yang sama seperti @vercel/sandbox
    • Memudahkan peralihan ke sandbox berbasis VM nyata bila diperlukan
  • Menyediakan perintah CLI just-bash
    • Berjalan berbasis OverlayFS dan seluruh hasil tulis dibuang dari memori setelah eksekusi
    • Mendukung output hasil secara programatik dengan opsi --json
  • Menyediakan mode shell interaktif (pnpm shell)
    • Secara default akses internet diizinkan, dapat diblokir dengan --no-network
  • Perintah yang didukung
    • Mencakup sebagian besar perintah Bash standar untuk manipulasi file, pemrosesan teks, pemrosesan data, kompresi, jaringan, dan lainnya
    • Dukungan opsional untuk perintah pemrosesan data seperti jq, sqlite3, python3 (berbasis Pyodide)
    • Untuk fitur shell, telah mengimplementasikan sebagian besar sintaks Bash seperti pipe, redirection, conditional, loop, fungsi, variabel, pola glob, dan lainnya
  • Struktur direktori bawaan menyediakan lingkungan mirip Unix seperti /home/user, /bin, /usr/bin, /tmp
  • Kontrol akses jaringan menggunakan whitelist berbasis URL dan metode HTTP
    • Dapat mengizinkan akses penuh dengan opsi dangerouslyAllowFullInternetAccess
  • Dukungan Python dan SQLite dapat diaktifkan secara opsional
    • Python berbasis Pyodide dan SQLite berbasis WASM (sql.js) menjamin eksekusi sandbox sepenuhnya
  • Fitur perlindungan eksekusi memungkinkan pengaturan batas seperti kedalaman fungsi, jumlah perintah, dan jumlah iterasi loop
  • Lisensi Apache-2.0

Belum ada komentar.

Belum ada komentar.