browser-rs-mcp - ultra hafif çoklu ajan gizli tarayıcı denetleyicisi
(github.com/maestrojeong)1. Motivasyon?
Bir ajana bir Chrome. Varsayılan bu olursa ajan başına 500MB~1GB RAM gider. Sadece 5 ajan çalıştırılsa bile yalnızca tarayıcı için 2.5~5GB RAM gerekir.
Üstelik Playwright, CDP oturumunun kendisi için varsayılan olarak tek başına yaklaşık 180MB tüketir. Tarayıcı süreci belleğini ayrı saysak bile, bu CDP katmanının zaten ağır olduğu anlamına gelir. Ajan sayısı arttıkça bu ek yük doğrusal olarak çarpılır.
Çoklu ajanı gerçek ortamda çalıştırmak için önce bu yapıyı kırmak gerekiyordu.
2. Nasıl?
Tarayıcıyı yalnızca bir kez başlatır. Ajan sayısı kaç olursa olsun bunun üstüne raw CDP ile bağlanır ve sunucu, owner bazında sekmeleri zorunlu olarak izole eder. Ajan A'nın sekmesine B dokunamaz. Tek bir instance ile N tanesi karşılandığı için ajan sayısı artsa da tarayıcı belleği artmaz.
Dil de değiştirildi. Rust ile yeniden yazıldı ve tarayıcıyı gömmeyen bir yapıda (mevcut Chrome'a --connect) oluşturulduğu için sunucunun kendisi tek bir 6MB binary.
Tespit edilmekten kaçınır. Patchright'tan ilham alarak Runtime.enable gibi tespiti kolay CDP domain'lerini hiç açmaz ve yamalı sahte bir tarayıcı yerine kullanıcının gerçek Chrome'u + persistent profile'ını aynen kullanır.
3. Özet
Özetle: ultra hafif çoklu ajan gizli tarayıcı denetleyicisi
raw CDP tabanlı 62 araç — erişilebilirlik ağacı ref, action settle-diff, network/cookies/storage/PDF/upload/iframe/WebAuthn, stdio + HTTP/SSE.
Kurulum
curl -fsSL https://raw.githubusercontent.com/maestrojeong/browser-rs-mcp/… | sh
4. Gelecek çalışmalar
Windows build'i ve crates.io kaydı da bir sonraki iş olarak duruyor.
Henüz yorum yok.