CLI

Create a game

ase new-game creates a game in your studio and writes its repo: an engine project with the Brain SDK installed, its CI workflows, its config for ASE Brain and a starter website. It commits the first version for you.

ase new-game "Neon Drift" --repo my-org/neon-drift --github

This:

  1. Creates neon-drift in your studio, in the dev stage.
  2. Writes the game's files into ./neon-drift, with the newest Brain SDK.
  3. Publishes the game's own config (brain/game.toml and brain/events.toml) to ASE Brain, so it accepts the game's events straight away.
  4. Commits everything.
  5. With --github, creates my-org/neon-drift through ASE Brain's GitHub App and pushes the first commit.

Without --github, push the repo to any Git host yourself. --repo is the repo's path on that host (my-org/neon-drift, or group/sub/neon-drift on GitLab), which your release trust matches against.

--github needs ASE Brain's GitHub App installed on your organization. ase studio github tells you where to install it.

Choosing what the game is

ase new-game "Neon Drift" \
  --engine unity \
  --platforms windows,macos,linux,android,ios \
  --multiplayer ranked,private
Flag Values Default
--id Lowercase letters, digits and dashes The name in lowercase with dashes
--engine godot, unity, unreal godot
--platforms windows, macos, linux, android, ios, web windows,macos,linux
--multiplayer ranked, casual, private, lobbies, leaderboards None

The multiplayer features combine freely:

Feature What players get
ranked Rated 1v1 matchmaking with visible ratings, leaderboards and seasons
casual Practice matchmaking by a hidden rating
private Matches with a friend by invite code
lobbies Dedicated-server lobbies players browse or create
leaderboards A starter high-score board players post scores to

--online is the same as --multiplayer lobbies. Add features later with ase net add; Multiplayer covers the game's side.

In a terminal, ase new-game asks for whatever your flags leave open: whether a coding agent should build it, the multiplayer features and the platforms. Run by an agent or in CI, it asks nothing.

Let a coding agent build it

Give ase new-game an idea, and a coding agent builds the game from its first commit:

ase new-game "Cube Tac" --platforms android,ios --multiplayer ranked,private \
  --idea "3D tic-tac-toe with multiplayer on mobile" --agent claude-desktop

ase writes a brief from your idea and opens the agent in the game's folder with it:

--agent Opens
claude-desktop Claude's Code tab on the folder, with the prompt filled in
codex-desktop A Codex chat with the folder as its workspace, with the prompt filled in
claude, codex The CLI in this terminal, with the prompt sent

The agent writes the game's vision and a milestone roadmap into the repo, then builds it milestone by milestone, posting screenshots or video after each. The brief is also copied to your clipboard and printed, in case the app doesn't fill it in.

With the ase skill installed (ase skill install), you can also just ask Claude or Codex to "make a new game with ase".

What's in the repo

Path Whose What
The engine project Yours A runnable start, with the Brain SDK installed
brain/game.toml Yours, except its last block The game's name, platforms, store ids, multiplayer, leaderboards and purchases
brain/events.toml Yours The game's own analytics events (Events)
release.toml Yours Release targets and builds (Release a game)
AGENTS.md Brain's block, then yours Rules for coding agents working on the game
.github/workflows/ Brain's The game's CI: ci.yml, build.yml, release.yml and website.yml
websites/main/ Yours A starter website (Websites)

Files marked Brain's are kept current by ase sync; don't edit them. The block at the end of brain/game.toml, between # brain:begin and # brain:end, shows ASE Brain's values for the game (studio, repo, stage) and is read-only.

Binary assets are stored with Git LFS, so install it if your Git doesn't have it (git lfs install).

Check brain/ before you push, the same way a release will:

ase games check

Try the template without creating a game

ase new-game "Neon Drift" --local try-template

This only writes the files into try-template. Nothing is created in your studio.

Put an existing repo on ASE Brain

If your game already has a repo, adopt it instead of creating a new one. Run this in the repo:

ase games adopt --dry-run   # show what would change
ase games adopt

ase games adopt checks the repo's brain/, creates the game in your studio, publishes its config and runs ase sync. The id defaults to the repo's name and the repo path to the origin remote's; pass --game and --repo to choose others. It's safe to run again.

Manage your games

ase games list
ase games show neon-drift                          # its config, where each value lives, and the live version
ase games rename neon-drift "Neon Drift Deluxe"    # the id stays

Dev and live

Every game starts in dev. Store targets (Steam, Google Play and the App Store) take only live games, so promote a game before its public launch:

ase games promote neon-drift

A live game's data only grows, and it can't go back to dev.

Delete a game

Owners and admins can delete a dev game:

ase games delete neon-drift
ase games restore neon-drift   # within 7 days

Every service stops serving the game at once, and its data is purged after 7 days unless you restore it.