Overview

Beta release — why?

Welcome to the documentation portal for STM32CubeCLI.

STM32CubeCLI is a platform for discovering, installing, and running tools in the STM32Cube ecosystem.

Why it exists

STM32CubeCLI is the next generation of command line tools after STM32CubeCLT, evolved from one monolithic package into independently installable bundles. This evolution brings:

STM32CubeCLT

STM32CubeCLI

Packaging

One monolithic package: for example, two compilers where a project typically only needed one

Independent bundles: install just what you need, and update one tool without redownloading everything else alongside it

Versions

One version on PATH, shared by the whole machine

Per-project pinned versions: every project can differ, and coexist

Result

Varies: depends on the user’s permissions/privileges, target OS and architecture, may vary from one machine to another

The same result everywhere: your machine, a teammate’s machine, a CI runner

What is STM32CubeCLI?

STM32CubeCLI is made of three parts working together:

icon-wrapper Wrapper

The cube CLI tool itself — a single command-line entry point.

Example: cube cmake --version

icon-manager Bundle manager

The STM32Cube ecosystem’s package manager, reached through cube bundle.

Example: cube bundle install cmake

icon-bundle Bundles

Individually installable packages that each add specific tools, commands and resources to cube.

Example: cmake, programmer, mx

The promise behind all three:

“Your tools travel with your code.”

  • ✓ Package-based: install only what a project needs, from a public registry, no login required
  • ✓ Low-risk updates: Individually updateable bundles (a bundle is updated together with its dependencies, other bundles with their dependencies are kept untouched, several versions of bundles coexist in the same environment when needed)
  • ✓ Day-one ready: a new colleague is productive from the start — the environment is the checkout
  • ✓ Guaranteed reproducibility across:
    • host OS and architecture: one lock file resolves the right binary on Windows, Linux, macOS, x86_64 or Arm
    • projects: each project pins its own tool versions and can coexist with other projects
    • every surface: IDE, CLI, CI and agentic AI all resolve the exact same tools

What the command surface looks like

The list of commands available on your machine depends on which bundles you have installed. See the Command reference for the full list of the wrapper commands.

To get a complete list of installed commands, run

cube --list

To get a complete list of available bundles online, please run

cube bundle list-online

Where to go next

  • Getting started — install STM32CubeCLI and build your first reproducible project

  • Command reference — the list of tools and commands available through cube

  • Licenses — license terms for STM32CubeCLI and the bundles it installs

  • Have a question, a request, or found an issue? Ask on the ST community forum