CLI Reference
turian-cli is the headless companion to Turian Studio. It scaffolds projects, prints metadata, and compiles self-contained game executables — no GUI required, which makes it ideal for continuous integration.
Commands
new-project
turian-cli new-project <path> "<Display Name>"
Scaffolds a new project directory with an assets/ folder and a starter scene.
turian-cli new-project ../my-game "My Game"
info
turian-cli info <path>
Prints the project's metadata (name, version, asset counts).
build
turian-cli build <path>
Cooks every asset into <path>/.cache/game.oap, generates build.zig + main.zig, and compiles a standalone executable at <path>/.cache/zig-out/bin/game[.exe].
The resulting binary is self-contained: it reads all assets from the sibling game.oap and needs no engine source tree to run.
Building from a source checkout
If you are working inside the engine repository rather than an SDK bundle:
zig build cli -- build path/to/my-project
Path resolution
turian-cli finds the engine sources in this priority order:
- Environment variables — e.g.
TURIAN_ENGINE_ROOT(highest priority). - SDK-relative paths — resolved from the
turian-sdk.jsonmarker next to the binary. - Build-time baked paths — present only in in-tree dev builds.
See the SDK Guide for the full list of override variables.
Use in CI
Because build is fully headless, a typical pipeline step is just:
build-game:
script:
- turian-cli build .
artifacts:
paths:
- .cache/zig-out/bin/