OverviewOverview
View Markdown

Build the runtime behind your AI-native game

Vifu is an open-source game runtime and visual creator Dashboard. Use it to connect Agents, build game rules, test real sessions, and publish one stable API for a web game, native app, or game engine.

Choose where to start

Your goalStart here
Run Vifu for the first timeRun with Docker
Work on Vifu source codeRun Vifu locally
Build a complete example gameBuild an interactive short drama
Connect an Agent or modelAgent Providers
Understand the public runtime APICore runtime design
See what the project is building nextRoadmap

Your first project

The shortest path from an empty deployment to a callable game is:

  1. Create a project. The project keeps the game source, Agents, resources, releases, keys, logs, and analytics together.
  2. Connect a provider. Add an Agent runtime or model from Providers, then add the Agents your game will use.
  3. Build and test. Use Canvas for game flow or Short Drama for a timeline-first story, then run the draft in Preview & QA.
  4. Publish and integrate. Publish the Game release, create a project key, and call the stable project endpoint from your game.

Canvas and Short Drama edit the same project source. You can move between them without exporting, converting, or keeping two versions of the game.

Start the Docker deployment

From a Vifu checkout:

cp .env.example .env
docker compose up -d

Open http://localhost:6791, create the first local administrator, and confirm the runtime is ready:

curl --fail --silent http://127.0.0.1:6790/health

The Dashboard guides the remaining project setup. Read Self-hosting before exposing the deployment on a network.

Two views of one game

EditorBest for
CanvasConnecting choices, state, Agents, tools, conditions, host actions, and endings as an executable graph.
Short DramaArranging scenes, cast, dialogue, choices, media, timing, and languages in a portrait timeline.

Use Preview & QA to run the compiled draft before publishing. The preview uses the same runtime as the final Game release.

One stable runtime

A published project exposes its complete game through:

http://127.0.0.1:6790/{project-slug}/v1/game

It also exposes an OpenAI-compatible API for direct Agent calls:

http://127.0.0.1:6790/{project-slug}/v1/chat/completions

The endpoint stays stable while you publish new releases or change the providers behind your Agents. Provider credentials remain inside the Vifu deployment.

Move a project or ship a release

For the current implementation, read Core runtime design and Authoring and releases. Unfinished work is kept separate in Technical direction and the Roadmap.