`mdl` is the canonical local interface for MDL game packages. Use it to authenticate against a host, inspect the active account, register a hosted game, diff it against hosted state, push local changes, and pull hosted files when needed.
The CLI exists to keep repository-driven authoring compatible with the hosted MDL platform. Local packages are for Git, reviews, automation, and agentic edits. The hosted workspace is still the platform-visible runtime source of truth. Live release remains a separate step.
When a package has its own agent skill, use that skill for package-owned edits first, then use the CLI for the platform handoff: inspect, diff, push, pull, and register against MDL.
| Layer | Purpose |
|---|---|
| Local package | Authoring, Git history, automation, and deterministic validation. |
| Hosted dev workspace | Cloud copy used for inspection, preview, and development pushes. |
| Live release | Deliberate publish target for player-facing updates. |
The current public command contract stays compact, but it now covers first-mile creator setup.
mdl auth stores host-scoped credentials for repeated remote CLI use.mdl whoami inspects the resolved account and plan for the active host.mdl register creates a hosted game record before the first push.mdl diff compares local package state against hosted state through the API.mdl pull retrieves hosted container contents into a local package or output directory.mdl push uploads only changed files, shows staged progress, and finalizes the hosted dev inventory.Registration now ships, but publish and release still stay intentionally separate from routine development pushes. Push should not double as a shortcut for live deployment.
The creator install path is the self-contained @continualmi/mdl package. It installs the mdl command without requiring the MDL app repository, local Next.js, or a local MGPT process.
npm install -g @continualmi/mdl
mdl auth login
mdl whoamiYou can also run one-off commands through npm without installing the binary globally.
npx @continualmi/mdl whoami
npx @continualmi/mdl diff --package ./my-game --game my-gameHosted diff, push, pull, and registration use bearer API keys against MDL platform routes under /api/platform/games/[gameSlug]/sync. The remote workflow targets the hosted dev container by default.
export MDL_BASE_URL="https://mdl.continualmi.com"
export MDL_API_KEY="your-creator-key"
mdl whoami
mdl inventory list my-game
mdl inventory cat my-game runtime/system_prompt.txt
mdl pull my-game --out ./tmp/my-game-hosted
mdl register --package ../my-game
mdl diff --package ../my-game --game my-game
mdl push --package ../my-game --game my-gameUse mdl auth login to save a host and API key for repeated inspection commands such as mdl whoami, mdl games, mdl containers, mdl inventory, mdl diff, and mdl push. When you omit --host, login defaults to https://mdl.continualmi.com.
mdl auth login --host https://mdl.continualmi.com
mdl whoami
mdl diff --package ../my-game --game my-game
mdl inventory list my-gameThe command tree is still reserved to grow into release flows without redesigning the current surface.
mdl publish or mdl release for player-facing release actions