deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Vercel blog

Vercel Sandbox, etkileşimli komutlar ve stdio MCP sunucuları için stdin desteği ekledi

Vercel Sandbox komutları artık stdin üzerinden veri alabiliyor; bu sayede geliştiriciler agent-browser gibi stdio MCP sunucularıyla konuşabilir ve çalışan diğer etkileşimli CLI programlarına veri aktarabilir.

Vercel Sandbox, etkileşimli komutlar ve stdio MCP sunucuları için stdin desteği ekledi

Vercel blogunda paylaşılan bir yazıya göre Vercel, Sandbox komutlarına standart giriş (stdin) desteği ekledi. Bir Vercel Sandbox içinde çalışan süreçler artık yürütülürken veri kabul edebiliyor; bu da stdio tabanlı Model Context Protocol (MCP) sunucularıyla — örnek olarak agent-browser gösteriliyor — ve girdiyi tek seferde değil sürekli olarak bekleyen diğer tüm komut satırı programlarıyla çift yönlü iletişim kapısını aralıyor.

TypeScript SDK bunu nasıl ele alıyor

TypeScript SDK'da runCommand() üzerinden başlatılan bir komut, iki ayarla bu özelliği devreye alıyor: stdin değerinin true ve detached değerinin true yapılması. Komut çalışmaya başladıktan sonra writeStdin() sürece veri gönderir ve closeStdin() başka girdi gelmeyeceğini bildirir. Çağıran taraf daha sonra komutun bitmesini bekleyip sürecin yazdığı çıktıyı okuyabilir.

Vercel'in changelog kaydı bu deseni cat yardımcı programıyla gösteriyor: çalışan komutun girdisine "hello" dizisi yazılıyor, girdi kapatılıyor ve komutun çıktısı okunduğunda aynı değer geri geliyor.

Ayrıca bir streaming varyantı var. stdin düz bir değer yerine process.stdin gibi bir Node.js readable stream'e yönlendirilebilir. SDK, stream'in ürettiği her şeyi aktarır ve stream sona erdiğinde komutun girdisini otomatik olarak kapatır.

Python SDK subprocess yolunu izliyor

Python SDK, standart kütüphanenin subprocess modülünü kullanmış herkese tanıdık gelecek yaklaşımlara dayanıyor. stdin=subprocess.PIPE ile bir süreç oluşturuluyor, girdi server.stdin.send() üzerinden iletiliyor ve communicate() çağrısı girdi pipe'ını kapatıp bekleyen tüm çıktıyı topluyor ve süreç çıkış yapana kadar bekliyor.

Girdisinin tamamını baştan tüketen daha basit komutlar için Vercel, Python kullanıcılarının elle bu düzenekle uğraşmayı atlayıp girdiyi doğrudan run_process() fonksiyonuna verebileceğini belirtiyor.

Neden önemli

Çalışan bir sürecin girdisine yazamamak, agent iş yükleri için gerçek bir kısıtlamaydı. MCP ekosisteminin önemli bir bölümü — tarayıcı otomasyonu sunucuları dahil — stdin üzerinde mesaj bekleyen yerel süreçler olarak kuruludur; dolayısıyla yalnızca bir komut başlatıp çıktısını okuyabilen bir sandbox bunları hiçbir zaman barındıramazdı. Bu değişiklikle birlikte bir Vercel Sandbox içinde çalışan bir agent, bir stdio MCP sunucusunu uçtan uca kullanabilir: aynı izole bulut ortamının içinde sunucuyu başlatabilir, gerektiğinde protokol mesajları gönderebilir ve yanıtları okuyabilir.

Aynı mekanizma, daha önce sandbox içindeki bir komuttan çalıştırmak imkânsız olan sıradan etkileşimli araçlara da — REPL'ler, prompt'lar, uzun süreli pipeline'lar — yarar sağlıyor. Hem TypeScript hem Python SDK kapsam dahilinde ve Vercel, başlangıç hakkındaki tüm ayrıntılar için okuyucuları Sandbox dokümantasyonuna yönlendiriyor.

  • #vercel
  • #cloud
  • #mcp
  • #developer-tools
  • #sdk

İlgili yazılar