これはモバイルアプリが載っている面そのものです。WebSocket を開いて JSON を送れれば、
ホストを作れます。
しくみ
1
デスクトップはすでに待ち受けている
エージェントパネルが開いているとき、オーケストレーターは LAN 上で トークンゲートされた
ペアリングリスナー を動かします(エンドポイント を参照)。開いている
各パネルタブは、安定した
tab_id とライブのエージェントセッションを持つ デスクトップタブ
です。2
ホストがペアリングトークンで接続する
クエリ文字列にトークンを付けてペアリング URL へ WebSocket を開きます。有効なトークンがなければ
接続は拒否されます — ペアリングがセキュリティ境界の全体です。
3
タブを一覧し、接続する
list_tabs を送って開いているデスクトップタブを見つけ、attach_tab で 1 つをミラーします。
ホストはいま そのタブの活動を受け取り(ストリーム)、操作できます。4
共有セッションを操作する
user_message フレームを送ります。接続中、サーバーはそれらを ミラーしたタブ へルーティング
します — なのでメッセージは、デスクトップエージェントがいる 同じ 会話に入ります。それが
「1 つのエージェント、共有コンテキスト」であり、2 つ目のセッションではない理由です。エンドポイント
ペアリングリスナーはブリッジポート(COMFYUI_MCP_BRIDGE_PORT、既定 9180)から派生します:
ペアリング URL:
- トークンはユーザーが
COMFYUI_MCP_PAIR_TOKENで 固定 するか(常時ペアリング)、 セッションごとに発行 され、パネルの QR / ペアフローで渡されます。ホストはモバイルアプリと 同じ方法でそれを得ます: ユーザーが一度ペアリングします。 - 既定は LAN 限定 ですが、ユーザーが求めれば公開露出も組み込みです: パネルのペアモーダルは
暗号化された cloudflared クイックトンネルを開く インターネット モードを出し、企業は
セルフホストのリレー(
COMFYUI_MCP_TUNNEL_BACKEND=relay)経由にもできます。どちらでも トークンがゲートします。
メッセージの形
すべてのフレームはtype を持つ JSON オブジェクトです。リクエスト / レスポンスフレームは、
あなたが選ぶ cid(相関 ID)を運び、対応する返信でエコーされます。
受信 — ホスト → オーケストレーター
接続中に送る他のパネルイベントも同様に、ミラーしたタブへルーティングされます。
送信 — オーケストレーター → ホスト
加えて、ミラーしたタブのライブエージェント活動(ストリームされた返信、ステータス、カード)が
あり、ホストが描画します。
セキュリティの不変条件 — ホストはこれらを必ず守る
これらがペアリングを安全にする保証です。それを守るホストを作ることが契約の全体です。 迂回しようとするホストは、リスナーが拒否するよう設計されたものです。これらを守ることはホストへの制約ではありません — それが 機能です。一度もペアリングしていない
セッションをクライアントが乗っ取ることを止めます。
- トークンゲート。 リスナーは有効なペアトークンのない接続を拒否します
(
verifyClient)。トークンを自動で出荷したり埋め込んだりするフローを作らないでください — ユーザーが一度、意図してペアリングします。 - 権威ある
attach_tabスタンプ。 フレームの対象タブを決めるのはサーバーであり、 クライアントではありません。ルーティングにクライアント供給のtab_idを頼らないでください。 先に接続し、それから送ってください。 - 非ヘッドレスの対象のみ。 本物のデスクトップタブには接続できます。別のヘッドレス クライアントにはできません(別のスマートフォン / ホストをミラーできません)。
- 一度に 1 タブ。 B に接続すると A への購読は落ちます。接続ごとにアクティブなミラーは 1 つとしてモデルしてください。
- 固定されたソケット種別。 接続の種別(ヘッドレス vs デスクトップ)は最初の
helloで 固定されます。テイオーバーガードを逃れるために切り替えないでください。
最小限のリファレンスクライアント
LLM にアダプターを作らせる
下のプロンプトを Claude、ChatGPT、またはコーディングエージェントに貼り付けて、プラットフォーム 向けのホストアダプターの足場を作らせてください。プロトコル契約の全体を運ぶので、モデルが 推測する必要はありません。Copy this into your LLM
連携を登録する
何か作りましたか? 登録 して、一覧できるようにし、プロトコル変更が出荷される前に旗を 立てられるようにしてください:サードパーティホストを登録する
GitHub の登録テンプレートを開く — 名前、プラットフォーム、リポジトリ、どのプロトコル
バージョンに対して作ったか。
安定性: 上のフレームはモバイルアプリが出荷しているものですが、まだ凍結されたバージョン付き
契約ではありません — ソース
(
src/services/ui-bridge.ts)
を権威として読み、ホストを登録して形が動くときに通知を受けてください。