# thrungames CLI manual

The thrungames command line tool. Every command except the local-only ones has an MCP tool of the same name (https://www.thrungames.com/mcp#tools).

## thrungames games

List, inspect and edit your games

### Commands

- [thrungames games edit](https://www.thrungames.com/cli/manual/games/edit.md): Change a game's engine or page layout
- [thrungames games get](https://www.thrungames.com/cli/manual/games/get.md): Show a game and its versions
- [thrungames games list](https://www.thrungames.com/cli/manual/games/list.md): List your games
- [thrungames games stats](https://www.thrungames.com/cli/manual/games/stats.md): Show plays, players and votes for a window against the one before

## thrungames games edit

Change a game's engine or page layout

MCP tool: `update_game` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames games edit [game] [flags]
```

### Examples

```sh
thrungames games edit space-dodger --layout immersive
thrungames games edit space-dodger --engine godot
```

### Flags

- `--engine` (string): engine: thrunium, unity, godot, gamemaker, construct, phaser, defold, bevy, playcanvas, pygame, love, other
- `--layout` (string): page layout: classic or immersive

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames games get

Show a game and its versions

MCP tool: `get_game` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames games get [game]
```

### Examples

```sh
thrungames games get space-dodger
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames games list

List your games

MCP tool: `list_my_games` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames games list
```

### Examples

```sh
thrungames games list
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames games stats

Show plays, players and votes for a window against the one before

MCP tool: `game_stats` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames games stats [game] [flags]
```

### Examples

```sh
thrungames games stats space-dodger --days 30
```

### Flags

- `--days` (int, default `7`): window to show: 1, 7 or 30 days

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames versions

List and manage a game's versions

### Commands

- [thrungames versions delete](https://www.thrungames.com/cli/manual/versions/delete.md): Delete a version
- [thrungames versions edit](https://www.thrungames.com/cli/manual/versions/edit.md): Change a version's name or display size
- [thrungames versions list](https://www.thrungames.com/cli/manual/versions/list.md): List a game's versions
- [thrungames versions set-current](https://www.thrungames.com/cli/manual/versions/set-current.md): Make an approved version the one players get
- [thrungames versions submit](https://www.thrungames.com/cli/manual/versions/submit.md): Send a draft version to review

## thrungames versions delete

Delete a version

MCP tool: `delete_version` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames versions delete <version-id> [flags]
```

### Examples

```sh
thrungames versions delete 3f2a9c1e --yes
```

### Flags

- `--yes` (bool): do not ask for confirmation

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames versions edit

Change a version's name or display size

MCP tool: `update_version` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames versions edit <version-id> [flags]
```

### Examples

```sh
thrungames versions edit 3f2a9c1e --name 1.2.1 --width 1280 --height 720
```

### Flags

- `--height` (int): display height in pixels (1-4096)
- `--name` (string): new version name
- `--width` (int): display width in pixels (1-4096)

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames versions list

List a game's versions

MCP tool: `list_versions` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames versions list [game]
```

### Examples

```sh
thrungames versions list space-dodger
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames versions set-current

Make an approved version the one players get

MCP tool: `set_current_version` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames versions set-current <version-id> [flags]
```

### Examples

```sh
thrungames versions set-current 3f2a9c1e --game space-dodger
```

### Flags

- `--game` (string): game slug or id (default: name in game.json)

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames versions submit

Send a draft version to review

MCP tool: `submit_version` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames versions submit <version-id>
```

### Examples

```sh
thrungames versions submit 3f2a9c1e
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames reports

Read and respond to reports filed against your games

### Commands

- [thrungames reports comment](https://www.thrungames.com/cli/manual/reports/comment.md): Reply on a report
- [thrungames reports comments](https://www.thrungames.com/cli/manual/reports/comments.md): Show the conversation on a report
- [thrungames reports list](https://www.thrungames.com/cli/manual/reports/list.md): List reports filed against a game
- [thrungames reports set-status](https://www.thrungames.com/cli/manual/reports/set-status.md): Set where a report stands

## thrungames reports comment

Reply on a report

MCP tool: `add_report_comment` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames reports comment <report-id> <text>
```

### Examples

```sh
thrungames reports comment 3f2a9c1e "Thanks, looking into it"
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames reports comments

Show the conversation on a report

MCP tool: `list_report_comments` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames reports comments <report-id>
```

### Examples

```sh
thrungames reports comments 3f2a9c1e
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames reports list

List reports filed against a game

MCP tool: `list_game_reports` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames reports list [game]
```

### Examples

```sh
thrungames reports list space-dodger
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames reports set-status

Set where a report stands

MCP tool: `set_report_status` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames reports set-status <report-id> <open|in_progress|resolved|rejected> [flags]
```

### Examples

```sh
thrungames reports set-status 3f2a9c1e resolved --reason "Fixed in the latest version"
```

### Flags

- `--reason` (string): explanation shown to the reporter

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames comments

Read comments on your games

### Commands

- [thrungames comments list](https://www.thrungames.com/cli/manual/comments/list.md): List comments on a game, newest first

## thrungames comments list

List comments on a game, newest first

MCP tool: `list_game_comments` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames comments list [game] [flags]
```

### Examples

```sh
thrungames comments list space-dodger
thrungames comments list space-dodger --limit 50
```

### Flags

- `--limit` (int, default `20`): comments per page (1-100)
- `--page-token` (string): continue from a previous listing

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames tokens

Manage upload tokens for CI

### Commands

- [thrungames tokens create](https://www.thrungames.com/cli/manual/tokens/create.md): Create an upload token for a game
- [thrungames tokens list](https://www.thrungames.com/cli/manual/tokens/list.md): List a game's upload tokens
- [thrungames tokens revoke](https://www.thrungames.com/cli/manual/tokens/revoke.md): Revoke an upload token

## thrungames tokens create

Create an upload token for a game

MCP tool: `create_upload_token` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames tokens create [game] --name <name> [flags]
```

### Examples

```sh
thrungames tokens create space-dodger --name "GitHub Actions"
```

### Flags

- `--name` (string): what the token is for (required)

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames tokens list

List a game's upload tokens

MCP tool: `list_upload_tokens` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames tokens list [game]
```

### Examples

```sh
thrungames tokens list space-dodger
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames tokens revoke

Revoke an upload token

MCP tool: `revoke_upload_token` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames tokens revoke <token-id> [flags]
```

### Examples

```sh
thrungames tokens revoke 3f2a9c1e --yes
```

### Flags

- `--yes` (bool): do not ask for confirmation

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames upload

Upload a build from a folder or a .zip file

MCP tool: `upload_build` (https://www.thrungames.com/mcp#tools)

```text
Zip a folder (or take a .zip), check it against the upload limits, and
upload it as a new version of your game.

Resolution order, first match wins:
  path     the argument, THRUNGAMES_PATH, "root" in game.json, then "."
  game.json  the working folder's, else the source folder's, else the zip's
  files    every file in the folder except .git, node_modules and
           dotfiles, narrowed by "include" and "exclude" in game.json
           (a .zip is uploaded as it is)
  version  --version, THRUNGAMES_VERSION, "version" in game.json, then
           git describe --tags --always in the source folder
  size     --width/--height, then game.json, then the current version's
           (an Immersive game with none gets 960x600)
  submit   --submit, or THRUNGAMES_SUBMIT=true (or 1)
  game     with an upload token (tgu_...) the token's game; otherwise
           --game, THRUNGAMES_GAME, then "name" in game.json

Without --submit the version stays a draft you can preview and submit
later with "thrungames versions submit".
```

### Usage

```sh
thrungames upload [path] [flags]
```

### Examples

```sh
thrungames upload ./build --game space-dodger --version 1.2.0
thrungames upload game.zip --game space-dodger --submit
```

### Flags

- `--game` (string): game slug or id (env THRUNGAMES\_GAME; default: name in game.json)
- `--height` (int): display height in pixels (default: game.json, then the current version's)
- `--submit` (bool): send the new version to review (env THRUNGAMES\_SUBMIT)
- `--version` (string): version name (env THRUNGAMES\_VERSION; default: game.json, then git describe)
- `--width` (int): display width in pixels (default: game.json, then the current version's)

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames whoami

Show the signed-in account

MCP tool: `whoami` (https://www.thrungames.com/mcp#tools)

### Usage

```sh
thrungames whoami
```

### Examples

```sh
thrungames whoami
thrungames whoami --json
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames login

Sign in with your browser

Local only: no MCP tool

### Usage

```sh
thrungames login [flags]
```

### Examples

```sh
thrungames login
thrungames login --no-browser --read-only
```

### Flags

- `--no-browser` (bool): print the sign-in URL instead of opening a browser
- `--read-only` (bool): request read access only

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames logout

Sign out and forget the stored login

Local only: no MCP tool

### Usage

```sh
thrungames logout
```

### Examples

```sh
thrungames logout
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames uninstall

Remove the thrungames CLI from this computer

Local only: no MCP tool

### Usage

```sh
thrungames uninstall [flags]
```

### Examples

```sh
thrungames uninstall
thrungames uninstall --yes --keep-login
```

### Flags

- `--keep-login` (bool): keep the saved login (and the settings folder it lives in)
- `--yes` (bool): do not ask for confirmation

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames update

Update thrungames to the latest release

Local only: no MCP tool

### Usage

```sh
thrungames update
```

### Examples

```sh
thrungames update
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## thrungames version

Print the CLI version

Local only: no MCP tool

### Usage

```sh
thrungames version
```

### Examples

```sh
thrungames version
```

Global flags: --api, --json, --token (see https://www.thrungames.com/cli/manual.md)

## Global flags

- `--api` (string): API URL (env THRUNGAMES\_API, default https://api.thrungames.com)
- `--json` (bool): print JSON instead of tables
- `--token` (string): token to use instead of your login (env THRUNGAMES\_TOKEN)
