本文へスキップ

ホストブリッジプロトコル

ほとんどのゲームはホストブリッジを直接使いません。@vifu/sdk を使ってください。

このページは高度なデバッグとホスト実装者向けです。

ライフサイクル

  1. ゲーム一式が読み込まれます。
  2. SDK がメッセージリスナーを登録します。
  3. SDK がランタイム準備完了を通知します。
  4. ホストが初期化メッセージを送ります。
  5. vifu.ready() が resolve し、vifu.status().hostConnectedtrue になります。

公開 SDK との対応

SDK APIブリッジの目的
vifu.ready()ホスト初期化を待つ。
vifu.tool(...)呼び出し可能なツール定義を宣言する。
vifu.agent(...)NPC、チューター、AI パートナーなどに独立した Runtime Agent を作る。
vifu.run(...)対象 agent のモデル / ツールループを 1 回実行する。
vifu.resources.*宣言済みランタイムリソースを解決または読む。
vifu.gameState.*ゲーム側の状態をセーブ / 復元する。
vifu.ai.*Vifu AI をプロバイダー選択と使用量制限を通して呼ぶ。
vifu.dictionary.*vifu.voice.*vifu.review.*vifu.camera.*vifu.invoke(...)宣言済みプラットフォーム機能を呼ぶ。

Runtime Agent のツール登録

Vifu はツールを agent ごと、run ごとに分離します。ある agent に公開したツールは、ゲームが明示的に登録しない限り別の agent では使えません。

vifu.run(agent, input, { tools }) に直接渡したツールはその run だけにスコープされ、リクエスト後にクリーンアップされます。agent に登録した永続ツールは、agent が dispose されるまで残ります。

Companion session socket は低頻度の play-session イベント用です。Runtime tool call は専用の runtime-skill Durable Object / WebSocket 経路を使います。

方針

ホストは未宣言の呼び出しを拒否します。aidatamediabundlelinkssavedictionaryvoicecamerareview のような公開マニフェスト上の名前を使ってください。

ゲームやバックエンド連携のために生の window.parent.postMessage(...) を使わないでください。生のブリッジメッセージはホスト実装の詳細であり、同じ互換系統内でも変わる可能性があります。