マニフェストリファレンス
manifest.json は、ゲーム作者が読むための公開コントラクトです。内部の権限グラフやランタイムポリシーを書く場所ではありません。
最小ゲームマニフェスト
json
{
"name": "door-quest"
}必須なのは name だけです。Vifu は manifestVersion、type、version、main.url、main.type、main.engine、main.sdk、build.output にデプロイ可能な既定値を補います。既定値が合わないときだけ各フィールドを書いてください。
id はデプロイに不要です。Vifu はサインイン中の所有者と name から更新先を決め、同じプロジェクトからの再デプロイでは同じゲームを更新します。
AI-native ゲームの例
json
{
"name": "AIventure",
"title": "AIventure",
"engine": "phaser",
"description": "A Phaser adventure game with AI-driven NPC dialogue.",
"tags": ["ai-native", "adventure", "phaser"],
"category": "story"
}フィールド
| フィールド | 必須 | 説明 |
|---|---|---|
name | はい | door-quest のような安定した ASCII デプロイ名。 |
manifestVersion | いいえ | 既定値は 1。 |
type | いいえ | 既定値は game。 |
title | いいえ | プレイヤーに表示されるタイトル。既定では name から生成されます。 |
version | いいえ | 既定値は 1.0.0。 |
engine | いいえ | phaser、three、vanilla などの簡潔なランタイムエンジン指定。内部では main.engine に変換されます。明示的な main.engine がある場合はそちらが優先されます。 |
description | いいえ | プレイヤー向けの短い説明。 |
tags | いいえ | 検索、分類、発見用のタグ。 |
main | いいえ | ブラウザー入口とエンジン情報。既定値は index.html、static-web、vanilla、sdk: auto。 |
build | いいえ | ローカルビルドコマンドと出力ディレクトリ。 |
ai | いいえ | Vifu AI は既定で SDK から利用できます。AI を明示的に無効化する場合やプラットフォーム固有の上書き以外では書かないでください。 |
companion | いいえ | companion bridge を有効化 / 設定します。companion 機能は既定で有効です。無効にする機能だけ false を書きます。 |
save | いいえ | ゲーム状態の保存範囲。 |
dictionary | いいえ | 辞書の言語ペアと項目。 |
voice | いいえ | 音声入力 / 出力。 |
camera | いいえ | ゲームが要求するカメラモード。 |
review | いいえ | 復習 / 採点の対象とモード。 |
data | いいえ | vifu.resources で読める名前付きデータファイル。 |
media | いいえ | 名前付きメディアファイル。 |
bundle | いいえ | 配信するゲーム一式に含める追加ファイル。 |
links | いいえ | ランタイムが開ける外部リンク。 |
category | いいえ | 公開プロダクトファミリー: language、knowledge、story、music、creative、wellbeing、arcade。adventure のような細かい語は tags に入れます。 |
remix | いいえ | リミックスのアクセス方針。 |
main
json
{
"main": {
"url": "index.html",
"type": "static-web",
"engine": "vanilla",
"sdk": "auto"
}
}url は build.output 内の HTML 入口ファイルです。
build
json
{
"build": {
"command": "npm run build",
"output": "dist"
}
}vifu deploy は --no-build がない限り build.command を実行し、build.output を検証してからアップロードします。
V1 に書かないもの
次の key は内部用、または古い公開設計です。
identryplayruntimeservicesdevicesresourcespermissionscapabilitiesbrowsersecurityschema
ai、data、media、bundle、links、save、dictionary、voice、camera、review のようなプロダクト上の名前を使ってください。
検証と説明
bash
vifu manifest check
vifu manifest explain
vifu manifest explain --debug--debug は、プラットフォーム保守者がコンパイル済みの内部ランタイムポリシーを見るためのものです。