Docs menu

Docs ▸ Agents

GitHub Actions

npx gameshipper ci init

This writes .github/workflows/gameshipper.yml. On every push to main or master and every pull request it builds each desktop target on its own OS (windows-latest, macos-latest, ubuntu-latest) with --frozen-lock, runs the build for a few seconds with play --packaged --smoke (under a virtual display on Linux), and uploads it as an artifact: <game>-windows.tar.gz, -mac and -linux, tarballs so file permissions and the Mac app survive. Commit gameshipper.lock with it if your game has one. Hosted runners have no GPU, so the workflow sets GAMESHIPPER_SOFTWARE_GL=1. The workflow pins the Gameshipper version that wrote it, checks out without keeping the repository's token, and uses no secrets; its comments say how to add your Steamworks SDK and Mac signing without handing those secrets to pull requests.