Bu, mobil uygulamanın üzerine kurulduğu tam yüzeydir. Bir WebSocket açıp JSON
gönderebiliyorsanız bir ana makine kurabilirsiniz.
Nasıl çalışır
1
Masaüstü zaten dinliyor
Ajan Paneli açıkken orkestratör LAN’da token kapılı bir eşleştirme
dinleyicisi çalıştırır (bkz. Uç noktalar). Açık her panel
sekmesi, kararlı bir
tab_id ve canlı bir ajan oturumu olan bir masaüstü
sekmesidir.2
Ana makineniz eşleştirme token'ıyla bağlanır
Eşleştirme URL’sine token sorgu dizisinde bir WebSocket açın. Geçerli bir
token olmadan bağlantı reddedilir — eşleştirme bütün güvenlik sınırıdır.
3
Sekmeleri listeleyin ve birine tutunun
Açık masaüstü sekmelerini keşfetmek için
list_tabs gönderin, sonra birini
yansıtmak için attach_tab. Ana makineniz artık o sekmenin etkinliğini
(akışlı) alır ve onu sürebilir.4
Paylaşılan oturumu sürün
user_message çerçeveleri gönderin. Tutunmuşken sunucu onları yansıtılan
sekmeye yönlendirir — böylece mesajınız masaüstü ajanının içinde olduğu
aynı konuşmaya girer. Onu “bir ajan, paylaşılan bağlam” yapan, ikinci bir
oturum değil, budur.Uç noktalar
Eşleştirme dinleyicisi köprü portundan türetilir (COMFYUI_MCP_BRIDGE_PORT,
varsayılan 9180):
Eşleştirme URL’si:
- Token ya kullanıcı tarafından
COMFYUI_MCP_PAIR_TOKENile sabitlenir (her zaman açık eşleştirme) ya da oturum başına basılır ve panelin QR / eşleştirme akışıyla dağıtılır. Ana makineniz onu mobil uygulamanın aldığı şekilde alır: kullanıcı bir kez eşleştirir. - Varsayılan olarak LAN’a bağlıdır, ama kullanıcı istediğinde herkese açık
dışa açma yerleşiktir: panelin eşleştirme kutusı şifreli bir cloudflared
hızlı tünel açan bir İnternet kipi sunar ve kuruluşlar onu kendi
barındırdıkları bir röle üzerinden yönlendirebilir
(
COMFYUI_MCP_TUNNEL_BACKEND=relay). Token her iki yolda da kapılamaya devam eder.
Mesaj biçimleri
Tüm çerçeveler birtype taşıyan JSON nesneleridir. İstek/yanıt çerçeveleri
sizin seçtiğiniz, eşleşen yanıtta yankılanan bir cid (bağıntı kimliği)
taşır.
Gelen — ana makine → orkestratör
Tutunmuşken gönderdiğiniz diğer panel olayları da aynı şekilde yansıtılan
sekmeye yönlendirilir.
Giden — orkestratör → ana makine
Artı yansıtılan sekmenin canlı ajan etkinliği (akışlı yanıtlar, durum, kartlar);
ana makineniz bunları çizer.
Güvenlik değişmezleri — bir ana makine BUNLARI korumalıdır
Bunlar eşleştirmeyi güvenli kılan garantilerdir. Onlara saygı duyan bir ana makine kurmak bütün sözleşmedir; onları atlatmaya çalışan bir ana makine, dinleyicinin reddetmek üzere tasarladığı şeydir.Bunları korumak ana makineniz üzerinde bir kısıt değildir — özelliğin
kendisidir. Bir istemcinin hiç eşleşmediği bir oturumu ele geçirmesini
durdururlar.
- Token kapısı. Dinleyici geçerli bir eşleştirme token’ı olmadan herhangi
bir bağlantıyı reddeder (
verifyClient). Token’ı otomatik gönderen ya da gömen bir akış asla kurmayın — kullanıcı bir kez, kasıtlı eşleştirir. - Yetkili
attach_tabdamgalama. Çerçevelerinizin hangi sekmeyi hedeflediğine istemci değil sunucu karar verir. Yönlendirme için istemcinin verdiğitab_id’ye bel bağlamayın; önce tutunun, sonra gönderin. - Yalnızca başsız olmayan hedefler. Gerçek bir masaüstü sekmesine tutunabilirsiniz, başka bir başsız istemciye asla (başka bir telefonu/ana makineyi yansıtamazsınız).
- Aynı anda bir sekme. B’ye tutunmak A’ya aboneliğinizi düşürür. Bağlantı başına tek etkin yansımayı modelleyin.
- Sabit soket türü. Bir bağlantının türü (başsız ya da masaüstü) ilk
hello’sunda sabittir; ele geçirme korumalarından kaçmak için onu çevirmeye çalışmayın.
Asgari başvuru istemcisi
Adaptörünüzü bir LLM’ye yaptırın
Aşağıdaki istemi Claude, ChatGPT ya da kodlama ajanınıza yapıştırın; sizin platformunuz için bir ana makine adaptörü iskeletlesin. Tam protokol sözleşmesini taşır, böylece modelin tahmin etmesi gerekmez.Copy this into your LLM
Entegrasyonunuzu kaydedin
Bir şey mi kurdunuz? Kaydedin; listelenebilsin ve protokol değişikliklerini yayımlanmadan önce size işaretleyebilelim:Üçüncü taraf bir ana makine kaydedin
GitHub’da kayıt şablonunu açın — ad, platform, depo ve hangi protokol
sürümüne karşı kurduğunuz.
Kararlılık: yukarıdaki çerçeveler mobil uygulamanın üzerine yayımladığı
şeydir, ama bu henüz dondurulmuş, sürümlenmiş bir sözleşme değildir — yetke
olarak kaynağı okuyun
(
src/services/ui-bridge.ts)
ve biçimler hareket ettiğinde haberdar edilmek için ana makinenizi kaydedin.