MG-CLI
MG-CLI (mg-cli) is a .NET 10.0 global tool that automates the end-to-end CI/CD pipeline for Godot game projects. It handles everything between "code is committed" and "players can download the new build": installing the engine, importing assets, exporting platform builds, bumping the version, tagging the release, deploying to storefronts, and announcing the release on Discord.
It is built and maintained by Mainframe Games and published to NuGet.
dotnet tool install --global mg-cli
What it does
A typical release pipeline built from mg-cli sub-commands looks like this:
flowchart TD
install["godot install"] --> import["godot import"]
import --> version["godot version --bump"]
version --> build["godot build"]
install -. engine + templates .-> build
build --> binaries(["platform binaries"])
binaries --> steam["steam deploy"]
binaries --> itchio["itchio deploy"]
binaries --> digitalocean["digitalocean"]
steam --> commit["commit<br/>tag + push"]
itchio --> commit
commit --> discord["discord-hook"]
digitalocean --> discord
Every command is a thin, scriptable wrapper over the tools a Godot release actually needs β the Godot headless editor, SteamCMD, itch.io's Butler, git, ssh/scp, and the Discord webhook API β with consistent logging, progress bars, and version handling layered on top.
Where to go next
| If you want to⦠| Read |
|---|---|
| Understand what the tool is and why it exists | Introduction |
| Install the tool and run your first command | Getting Started |
| Understand how the codebase is structured | Architecture |
| Look up a specific command and its flags | Command Reference |
| Understand the shared helper layer | Utilities |
| Understand versioning conventions | Versioning |
| Set up automated NuGet publishing | CI/CD Pipeline |
| Build, pack, and hack on the tool | Development |
Note
This documentation set is conceptual β it explains the design, workflows, and behavior of MG-CLI. It intentionally does not include generated API reference documentation. The source of truth for exact type signatures is the code itself in the MG-CLI/ project.