14 puan yazan xguru 2026-02-20 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Vercel tarafından geliştirilen "Bash for Agents"
  • Güvenli ve sandbox'lanmış bir bash ortamına ihtiyaç duyan yapay zeka ajanları için tasarlanmış TypeScript tabanlı sanal Bash ortamı
  • Bellek içi sanal dosya sistemi (InMemoryFs) üzerinde çalışır; gerçek diske erişemeyen bir sandbox çalıştırma ortamı sunar
  • Varsayılan olarak ağ erişimi engellenmiştir; gerektiğinde curl üzerinden izin verilen URL tabanlı güvenli ağ istekleri desteği sağlar
  • Yalnızca sağlanan dosya sistemine erişebilir ve sonsuz döngü/özyinelemeli çalıştırmayı önleme özelliği içerir
    • İkili dosya veya WASM çalıştırma desteklenmez
  • API kullanımı sırasında exec() bazında yalıtılır; bu nedenle ortam değişkenleri, fonksiyonlar ve çalışma dizini çağrılar arasında korunmaz (yalnızca dosya sistemi durumu kalıcıdır)
  • Oluşturma parametreleri ile başlangıç dosyaları, ortam değişkenleri, çalışma dizini, çalıştırma limitleri gibi ayrıntılı ayarlar yapılabilir
  • Lazy dosya yükleme desteği sunar; dosya içerikleri yalnızca gerektiği anda eşzamanlı/eşzamansız fonksiyonlarla üretilebilir
  • Özel komut tanımlama (defineCommand) özelliğiyle TypeScript tabanlı özel komutlar eklenebilir
    • CommandContext üzerinden fs, cwd, env, stdin, exec erişimi sağlanır
  • 4 farklı dosya sistemi uygulaması sunar
    • InMemoryFs: tamamen bellek tabanlı
    • OverlayFs: okuma diskten, yazma bellekten
    • ReadWriteFs: gerçek disk üzerinde okuma-yazma yapabilir
    • MountableFs: birden fazla dosya sistemini yollara göre mount ederek birleşik bir ad alanı oluşturur
  • AI SDK entegrasyon aracı olarak bash-tool desteği sunar
    • generateText() ile birleştirilerek yapay zeka modelinin Bash komutlarını güvenli şekilde çalıştırması için tasarlanmıştır
  • Vercel Sandbox uyumlu API sağlar
    • Sandbox sınıfı üzerinden @vercel/sandbox ile aynı arayüzle kullanılabilir
    • Gerektiğinde gerçek VM tabanlı sandbox'a geçiş kolaydır
  • CLI olarak just-bash komutunu sunar
    • OverlayFS tabanlı çalışır ve yürütme sonrasında tüm yazma içerikleri bellekten atılır
    • --json seçeneğiyle programatik sonuç çıktısı desteği sağlar
  • Etkileşimli kabuk modu (pnpm shell) sunar
    • Varsayılan olarak internet erişimine izin verir, --no-network ile engellenebilir
  • Desteklenen komutlar
    • Dosya işlemleri, metin işleme, veri işleme, sıkıştırma, ağ gibi alanlarda çoğu standart Bash komutunu içerir
    • jq, sqlite3, python3 (Pyodide tabanlı) gibi veri işleme komutları da isteğe bağlı olarak desteklenir
    • Kabuk özellikleri olarak pipe, yönlendirme, koşullar, döngüler, fonksiyonlar, değişkenler, glob desenleri gibi Bash söz diziminin büyük kısmı uygulanmıştır
  • Varsayılan dizin yapısı /home/user, /bin, /usr/bin, /tmp gibi Unix benzeri bir ortam sunar
  • Ağ erişim denetimi, URL ve HTTP yöntemi tabanlı beyaz liste yaklaşımını kullanır
    • dangerouslyAllowFullInternetAccess seçeneğiyle tamamına izin verilebilir
  • Python ve SQLite desteği isteğe bağlı olarak etkinleştirilebilir
    • Pyodide tabanlı Python ve WASM tabanlı SQLite (sql.js) ile tam sandbox yürütmesi garanti edilir
  • Çalıştırma koruma özellikleri ile fonksiyon derinliği, komut sayısı, döngü yineleme sayısı gibi yürütme sınırları yapılandırılabilir
  • Apache-2.0 lisansı

Henüz yorum yok.

Henüz yorum yok.