Continual MI
MDL
Endless VN Engine
GamesMGPT APIEarningsMonitoringDocs
Learn
  • Introduction
  • Quick Start
  • MDL CLI
  • How It Works
Build
  • Workspace
  • Agentic Workflow
  • Instructions
  • Schema
  • Assets
Ship
  • Publishing
  • Monitoring
  • Earnings & Payouts
Reference
  • Package Model
  • API Keys & Auth
  • CLI Reference
  • Platform Reference
Docs/Package Model

Package Model

MDL game packages are the stable local artifact for repository-driven creator workflows. The package contract is deterministic so diff, push, pull, review, and automation all see the same file set.

Required files

PathRole
manifests/game-definition.jsonTop-level package metadata, including published asset globs.
manifests/runtime-ui.jsonRuntime presentation and UI configuration.
prompts/system_prompt.txtThe main game-owned runtime instruction file.
schemas/structured-output/structured_output.jsonVisible structured-output contract used by the runtime.
openings/opening_states.jsonOpening-state content for the game.

Optional files

  • prompts/generated_scene_image_system_prompt.txt when the game uses hosted generated-scene image prompting
  • prompts/additional_special_scene_instructions.txt for a short final user-prompt addendum on generated-scene image requests
  • prompts/special_background_image_system_prompt.txt when the game uses generated reusable background plates
  • prompts/additional_special_background_instructions.txt for reusable generated-background addendum text
  • prompts/protagonist_avatar_image_system_prompt.txt and prompts/protagonist_avatar_image_user_prompt.txt when the game supports generated protagonist avatars
  • prompts/additional_instructions.txt for MGPT additional instructions that can be frozen into universe generation contracts
  • openings/opening_states.<locale>.json for localized opening-state data when supported, with Portuguese kept at openings/opening_states.pt.json for compatibility

Package folders

  • manifests/ stores package metadata and runtime UI configuration.
  • prompts/ stores runtime, image, avatar, and addendum instruction files.
  • schemas/ stores the structured-output contract.
  • openings/ stores opening-state data.
  • assets/ stores game-owned images, audio, and other published files.

Published asset rules

Runtime-required files are always included in the inventory. Assets are opt-in. Only paths matched by assets.published in manifests/game-definition.json are considered part of the hosted package inventory.

{
  "assets": {
    "published": [
      "images/backgrounds/**",
      "images/ui/**",
      "audio/*.mp3",
      "audio/sfx/*.wav"
    ]
  }
}

Patterns are relative to the assets/ root. Files that are not matched stay local by default, which keeps work-in-progress references and authoring assets out of the hosted runtime.

Public source package exports

Public read-only workspaces can expose a downloadable source package. For non-owner exports, files under prompts/ are replaced with generic functional instructions so the package structure, schema, openings, and assets remain inspectable without revealing production instruction IP.

Owner and admin exports include the real prompt files. Public exports include a README listing which instruction files were replaced.

Deterministic inventory

`mdl diff` and `mdl push` both use the same deterministic inventory model. Path normalization, file hashing, published asset filtering, and hosted path mapping are shared across local and remote operations.

  • Hashes are content-based and stable.
  • File ordering is normalized before the container hash is computed.
  • The same package contract powers local inspection and hosted pushes.

Design for Git and agents

The package contract is intentionally file-oriented. That keeps changes reviewable, diffable, and safe to edit with code agents instead of burying core game logic in opaque binary blobs or ad hoc editor state.

Next

Build
MDL CLI
Use the package model through the canonical local commands.
Reference
CLI reference
See exactly how `diff`, `push`, and `pull` operate on the package.
Build
Agentic workflow
Apply the package model safely in Git-based AI workflows.