deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (native)

gPTY, AI ajanları için MCP kontrol yüzeyine sahip Godot ve Rust tabanlı bir terminal multiplexer

gPTY, Godot arayüzünü Rust PTY çekirdeğiyle birleştiriyor ve panellerini JSON-RPC ve MCP üzerinden sunuyor; böylece ajanlar ekran kazımadan girdi gönderebilip çıktıyı okuyabiliyor. Kod tabanının büyük kısmı LLM ile üretildi.

gPTY, AI ajanları için MCP kontrol yüzeyine sahip Godot ve Rust tabanlı bir terminal multiplexer

Godot ile render edilen bir arayüzü Rust çekirdeğiyle birleştiren açık kaynak terminal multiplexer gPTY, Hacker News'in ana sayfasında yer aldı. Projeyi öne çıkaran özelliği, çalışma alanının programatik olarak yönlendirilmeye dayalı olması: JSON-RPC socket'i, bir CLI ve bir MCP server sayesinde AI ajanları ve otomasyon betikleri, ekrandaki metin arayüzünü ayrıştırmak yerine doğrudan panel açabili, metin gönderebili ve terminal çıktısını izleyebiliyor.

Rust motor dairesine sahip döşemeli bir çalışma alanı

Projenin GitHub deposuna göre gPTY, terminal panellerinin yanı sıra kod görüntüleyiciler, dosya ağaçları ve başka panel türlerini barındırabilen, yeniden boyutlandırılabilir bir döşeme ızgarası sunuyor. Terminal emülasyonu, alacritty_terminal üzerinden DEC STD 070'ın tamamını hedefliyor; 16/256/true renk, regex aramalı scrollback ve satır sonu kaydırmalı metin seçimi destekleniyor.

README'de listelenen bileşen seçimleri adeta Rust ekosisteminin turu gibi: platformlar arası PTY yönetimi için portable-pty (tek bir API arkasında Linux ptmx ve Windows ConPTY), ANSI ayrıştırma için vte crate'i ve her PTY için ayrı bir OS thread'i üzerinden kanallarla beslenen, terminal başına tokio görevleri. Izgara durumu, gdext 0.5 ile derlenen bir GDExtension üzerinden, 2024 Rust sürümünü kullanarak _draw() için diziler halinde Godot 4.7+'ya aktarılıyor. Linux, macOS ve Windows için bağımsız binary'ler yayımlanıyor; yani çalıştırmak için ne Godot ne de Rust araç zinciri gerekiyor; güncel sürüm v0.5.3.

API ürünün kendisi

Ortak yüzey, bir IPC socket'i, bir gpty CLI'ı ve bir MCP server üzerinden belgelenmiş, sürümlü bir protokol. Linux'ta CLI, $XDG_RUNTIME_DIR altındaki bir Unix socket'ine bağlanıyor. Alt komutlar çalışma alanı yaşam döngüsünü kapsıyor: panel oluşturma, listeleme, odaklama ve kapatma; etikete göre panele metin gönderme; adlandırılmış düzenleri kaydetme ve yükleme; GUI daemon'unu yönetme.

MCP server stdio üzerinden çalışıyor ve her CLI alt komutu için bir tool sunuyor; pane-read, pane-run, pane-wait ve broadcast bunlar arasında, agent harness'lerin otomatik keşfi için kök mcp. önekiyle birlikte. Tool şemaları, CLI'ı güçlendiren aynı clap tanımlarından üretiliyor; proje bunun MCP manifest'inin gpty --help ile eşzamanlılığını kaybetmesini engellediğini söylüyor. Bir schema komutu GUI çalışmadan manifest'i verebiliyor ve bir --skill bayrağı, bir panel içinde çalışan kodlama ajanları için paketlenmiş bir skill belgesini yazdırıyor.

Ajan etkileşimine ilişkin güvenlik önlemleri

İki mekanizma ölçülülüğüyle öne çıkıyor. Bir "kavram motoru", PTY çıktısında regex tetikleyicileri çalıştırıp yakalanan metni kod görüntüleyici veya Inspector gibi bitişik panellere yönlendiriyor; ancak README, kavramların yalnızca yakalayıp görüntülediğini — bir shell'e asla girdi enjekte etmediğini — açıkça belirtiyor. Ajan gözlemlenebilirliği de aynı şekilde pasif: bir reasoning paneli belgelenmiş ajan yaşam döngüsü olaylarını yansıtıyor (OMP tabanlı, genişletilebilir) ve bir Inspector paneli özel, toolsuz bir soru-cevap oturumu çalıştırıyor; gPTY ise ajan durumunu asla orkestre etmiyor.

Scrollback, ayarlar, çalışma alanları ve profiller SQLite'a veya JSON'a otomatik kaydediliyor ve yeniden başlatmada geri yükleniyor; her panelin kalıcı geçmişinde tam metin arama destekleniyor.

Uyarılar ve lisans

README, Godot arayüz düzeninin büyük bölümü ve Rust GDExtension köprüsü dahil olmak üzere kod tabanının büyük çoğunluğunun LLM'lerle üretildiğini ve alışılmadık kalıplar ile hatalar içerebileceğini alışılmadık derecede açık sözlü biçimde belirtiyor. Güvenlik duruşu — kavram motorundaki regex hizmet dışı bırakma savunmaları, PTY ortam temizliği, IPC sağlamlaştırması ve OSC 52 kısıtlamaları dahil — ayrı güvenlik ve uygulama belgelerinde ayrıntılandırılmış.

Proje GPLv3-or-later lisanslı, telif hakkı 2026 Neil Pathare'a ait ve 7. madde istisnası içeriyor: CLI, JSON-RPC, MCP veya olay arayüzleri üzerinden etkileşen eklentiler, uzantılar ve adaptörler MIT veya Apache-2.0 gibi serbest koşullarla yayımlanabiliyor; yapılandırma ve veri dosyaları ise herhangi bir copyleft taşımıyor.

Neden önemli

Kodlama ajanları bugün çoğunlukla elleri ve gözleri olarak tmux tarzı send-keys artı ekran kazıma yöntemini kullanıyor; bu yapısal olarak kırılgan. gPTY tasarımı tersine çeviriyor: programatik arayüz birincil API, GUI ise yalnızca onun istemcilerinden biri. MCP üzerinden yapılandırılmış panel okuma ve yazma işlemleri, ajanlara yapılandırılmış tarayıcı otomasyonu API'lerinin web testlemesine kazandırdığına benzer bir şey veriyor — daha az ayrıştırma, daha az yanlış pozitif. LLM ile yazılmış kod tabanı hikayeye bir katman daha ekliyor: büyük ölçüde AI tarafından, AI odaklı iş akışları için inşa edilmiş, ekosistem dostu lisansla yayımlanmış bir araç. v0.5.x sürümünde ve hatalara dair açık bir uyarıyla birlikte, kanıtlanmış üretim araçlarından çok izlenmesi vaat eden bir altyapı.

  • #terminal
  • #godot
  • #rust
  • #mcp
  • #open-source
  • #developer-tools

İlgili yazılar