Skip to Content
Depot docs

Install the CLI

Build the depot CLI, point it at the API, and sign in as a person or with an organization API key.

The depot CLI does everything a studio does on Depot: create games, sign and push builds, publish store pages and manage keys. Players can also use it to install games, though most use the launcher.

Get the binary

There's no prebuilt download of the CLI yet. You build it from the Depot source with Rust.

Install Rust

Install Rust with rustup. The repository pins its toolchain in rust-toolchain.toml (1.95.0), and rustup installs that version for you the first time you build.

Build

From the root of the repository:

cargo build --release -p depot-cli

The binary is target/release/depot. Copy it somewhere on your PATH, or install it into Cargo's bin directory instead:

cargo install --path crates/depot-cli

Check it

depot --version
depot --help

The CLI is tested on macOS (Apple silicon) and Linux.

Another tool is also called depot: the CLI for depot.dev, a CI service that has nothing to do with this project. If depot --help doesn't list commands like push and game, the wrong binary is first on your PATH.

Choose the API

Every command that talks to Depot takes --api. The CLI picks the URL in this order:

  1. The --api flag.
  2. The DEPOT_API environment variable.
  3. The default saved by depot auth login.

Depot runs on staging today, so set:

export DEPOT_API=https://api.staging.depot.games

Put that line in your shell profile so every session uses it. depot login doesn't save a default, so without DEPOT_API you'd pass --api each time.

Sign in

There are two kinds of credential. Use depot login on your own machine, and an organization API key for CI and agents.

depot login
depot whoami

depot login opens the Depot sign-in page in your browser. The CLI keeps only a session in the OS keychain, never your password. On a machine without a browser, add --no-browser and open the printed URL yourself.

Your permissions come from your role in each organization. Sign out with depot logout, which also revokes the session.

When both exist, an API key wins: the CLI uses DEPOT_TOKEN or a stored key first, and falls back to your depot login session.

Check your setup

depot doctor

depot doctor checks your credentials file, whether the API answers (and which environment it is), the API key in use if there is one, and the CLI's state directory. Add --destination ~/Games/my-game to also check an installed game. Add --json for machine-readable output.

Where the CLI keeps things

WhatWhere
Config, stored API keys~/.config/depot/ (or $XDG_CONFIG_HOME/depot, or $DEPOT_CONFIG_DIR)
Signing keys~/.config/depot/keys/
Content key backups~/.config/depot/content-keys/
Your depot login sessionthe OS keychain

Back up the signing keys and content key backups. See Concepts for what each one does.

Logging

Every command accepts -v, -vv or -vvv for more detail. RUST_LOG overrides those flags. Most commands also take --json.

Full command reference: CLI.

On this page