Skip to content
Agentmart
Submit a tool

blazium-games-deploy

Ship game builds to Blazium Games from CI or the command line.

Skill by blazium-games

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/blazium-games-blazium-games-deploy

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Ship game builds to Blazium Games from CI or the command line. Issues rotated deploy keys, registers a build and uploads its zipped files and Breakpad symbols with the chauffeur CLI (or the upload API), and wires the build_id into crash reporting. Use when the user wants to deploy, upload, publish a build, upload symbols or store images, or set up GitHub Actions or GitLab CI for Blazium Games.

Use cases: backend, devops

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/blazium-games-deploy

What's inside

Skill name
blazium-games-deploy
Description
Ship game builds to Blazium Games from CI or the command line. Issues rotated deploy keys, registers a build and uploads its zipped files and Breakpad symbols with the chauffeur CLI (or the upload API), and wires the build_id into crash reporting. Use when the user wants to deploy, upload, publish a build, upload symbols or store images, or set up GitHub Actions or GitLab CI for Blazium Games.
License
MIT
Instructions
181 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Blazium Games: Deploy Builds

Register a build, upload its files, and keep the returned `build_id` for crash reporting. Builds and symbols only upload through the chauffeur CLI or the upload API with the game's deploy key. Store images upload through chauffeur or the game's edit page on the website. MCP can list and delete them but never uploads.

## Invoke This Skill When

- "Deploy my game to Blazium Games", "upload a build", "set up CI for Blazium Games"
- "Upload my debug symbols", "upload my screenshots"
- The user has a built game folder and a Blazium Games store page
- A CI job needs `BLAZIUM_ACCESS_TOKEN` / `BLAZIUM_SECRET_KEY`

## Prerequisites

- The `blazium-games` MCP server is connected with write access (see `blazium-games-get-started`)
- A store page exists. If not, run `blazium-games-store-page` first
- The game owner's email is verified. Uploads for an unverified owner fail with code `4096`. Check with `get_account` (`email_verified`); if needed, call `request_email_code`, ask the human for the code, and call `verify_email`. A game admin cannot verify for the owner
- chauffeur: `npm install -g @blazium-games/cli`. The CDN zip is still valid at `https://cdn.blazium.online/tools/chauffeur/<platform>/latest/archive/default` where `<platform>` is `windows-amd64`, `linux-amd64`, `linux-arm64`, `darwin-amd64`, or `darwin-arm64`. The zip contains the `chauffeur` binary

## 1. Read deploy info

Call `get_deploy_info` with the game's `uid` or vanity name. It returns (no secrets):

| Field | Use |
|-------|-----|
| `endpoints.upload_build` | `https://api.blazium.online/api/v1/tool/upload/build` |
| `endpoints.crash_ingest` | Crash reporter endpoint |
| `endpoints.events_ingest` | Events endpoint |
| `builds[]`, `latest_build_id` | Existing builds and their `build_id` |
| `keys[]` | Prefixes of existing deploy keys |
| `env` | Env var names to set in CI (`BLAZIUM_ACCESS_TOKEN`, `BLAZIUM_SECRET_KEY`, `BLAZIUM_API_URL`, `BLAZIUM_UPLOAD_URL`) plus `BLAZIUM_GAMES_APP_ID` and the latest `BLAZIUM_GAMES_BUILD_ID` for crash reporting |

## 2. Get deploy credentials

If the user already has an access token and secret stored in CI, skip this step.

Issuing a key needs developer mode on the account; `4105` means the human must turn it on at https://blazium.games/settings first.

Otherwise **warn first**: `request_deploy_key` immediately invalidates every previous deploy key for that game, which breaks any pipeline still using an old key. After the user confirms, call `request_deploy_key` with the `uid`. It returns `access_token` and `secret_key` once.

Tell the user to store them as CI secrets (for example GitHub Actions secrets `BLAZIUM_ACCESS_TOKEN` and `BLAZIUM_SECRET_KEY`) or in their shell environment. Do not write them into files that are committed. Do not repeat them after they are stored, and don't pass the secret with `--secret` (other processes can see it).

## 3a. Upload with chauffeur (recommended)

chauffeur reads `BLAZIUM_ACCESS_TOKEN` and `BLAZIUM_SECRET_KEY` from the environment (or `--access` and `--secret-stdin`). `chauffeur info` confirms which game the key belongs to.

1. Generate `build.yml` once: `chauffeur genbuild --version 1.0.0`
2. Optionally add changelog entries: `chauffeur addchangelog --title "..." --description "..."`. A new or changed changelog on a stable build emails the owner and accepted admins. The store page shows it, and a game pulls it from `GET /api/v1/games/{game_uid}/patch/notices` until the player acknowledges it.
3. Register the build: `chauffeur build --asset build.yml --os windows --arch x86_64`. It prints `BLAZIUM_GAMES_APP_ID` and `BLAZIUM_GAMES_BUILD_ID`
4. Generate `addfiles.yml`: `chauffeur setfiles --version 1.0.0 --os windows --arch x86_64 --files ./export/windows`
5. Upload the files, and symbols if the user has them: `chauffeur addfiles --asset addfiles.yml --symbols ./symbols`

`addfiles` reuses the build with the same version, type, OS, arch, and channel (keeping its notes), zips the files, checksums them, and uploads them, in 16 MB chunks that resume after a dropped connection when over 64 MB. Keep `version` the same in both YAML files.

Example `build.yml`:

```yaml
version: v1
spec: build
asset:
  title: "1.0.0"
  type: "game"
  description: "First release"
  version: 1.0.0
  engine_version: "4.3"
  platforms:
    - os: windows
      arch: x86_64
      channel: stable
  changelog:
    - title: "Launch"
      description: "First public build"
```

Set `engine_version` so mods can show whether they work with the build.

### Several apps (dedicated server, editor, launcher)

A project can ship more than one app, each with its own builds and channels. Add an `app` block to both YAML files, or pass `--app server --app-name "Dedicated Server"` to `build`, `addfiles`, `genbuild`, and `setfiles`:

```yaml
asset:
  app:
    id: server
    name: Dedicated Server
```

`id` is 1-32 lowercase letters, digits, or dashes; leave the block out for the main app. The store page groups downloads by app, and clean files of a non-main app are stored as `<game>-<app>-<channel>-<os>-<arch>.zip`. A build is only reused within its own app.

Other chauffeur commands:

| Task | Command |
|------|---------|
| Symbols for an existing build | `chauffeur symbols --build-id <build_id> ./symbols` (`upload_symbols_info` returns it) |
| Store images | `chauffeur media cover art/cover.png`, `chauffeur media thumbnail art/thumb.png`, `chauffeur media add shots/*.png`, `chauffeur media list` |
| List builds, files, and symbol counts | `chauffeur builds list` |
| Machine-readable output | Add `--json`; exit codes are 0 ok, 1 usage, 2 API error, 3 network |

Errors print the API code with a hint. See https://docs.blazium.games/docs/cli/troubleshooting

## 3b. Upload API directly

Use this only when chauffeur can't run.

1. `POST https://api.blazium.online/api/v1/tool/upload/build` with headers `X-Access-Token` and `X-Secret-Key` and JSON:

   ```json
   { "version": "1.0.0", "build_type": "game", "os": "windows", "arch": "x86_64",
     "channel": "stable", "title": "1.0.0", "description": "First release",
     "changelog_items": [{ "title": "Launch", "description": "First public build" }] }
   ```

   The same version, type, OS, arch, and channel update one build instead of creating another, replacing its title, description, and changelog. The response includes `build_id`.

2. `POST https://uploader.blazium.online/api/v1/tool/upload/files` (multipart, same headers) with fields `build_id`, `os`, `arch`, `channel`, `checksum` (SHA-256 hex of the zip), and `file` (a `.zip`, max 5 GB). Folders inside the zip are kept.

   - `os`: `windows`, `macos`, `linux`, `android`, `ios`, or `web`
   - `arch`: `x86_64`, `x86`, `arm64`, `arm32`, `arm`, `universal`, `wasm32`, or `wasm`
   - `channel`: lowercase letters, digits, `-`, `_`; starts with a letter or digit; up to 32 characters
   - `app` (optional, on both calls): the app id for a second app such as a dedicated server, with `app_name` for its display name

From blazium-games/games_docs, MIT.

More from blazium-games/games_docs

Signals

Stars
0
Forks
0
Open issues
15
Last commit (this folder)
Oct 14, 2026 (16 days ago)
Last release
Sep 27, 2026 (1 month ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from blazium-games

Cite this page

blazium-games-deploy skill. Agent Mart. https://agentmart.dev/skills/blazium-games-blazium-games-deploy (last updated 2026-10-24)