Standalone binaries for the mistral command-line tool.
This repository (mistralai/cli) hosts the compiled release assets only. The
source lives in the mistralai/dashboard monorepo under ts/cli/mistral, and
each release is built and published automatically from there.
This repository hosts mistral CLI releases exclusively. The installer fetches
the latest release by default, so publishing any unrelated release here would
break installs.
curl -fsSL https://mistral.ai/cli/install.sh | bashThe installer detects your platform, downloads the matching binary and
checksums.txt from the latest release, verifies the SHA-256 checksum, installs
to ~/.mistral/bin/mistral, and prints PATH instructions if needed.
mistral apps needs bun. If bun is not on your PATH, the installer asks whether to run the official bun installer, pinned to the bun version the CLI is built with. If you decline, or no terminal is attached, it prints the bun install command instead.
MISTRAL_INSTALL_BUN=0 never installs bun and only prints the command. To install bun without asking, for example in CI or from a coding agent, set MISTRAL_INSTALL_BUN=1:
curl -fsSL https://raw.githubusercontent.com/mistralai/cli/main/install.sh | MISTRAL_INSTALL_BUN=1 bashOverride the install location with MISTRAL_INSTALL_DIR:
curl -fsSL https://mistral.ai/cli/install.sh | MISTRAL_INSTALL_DIR="$HOME/.local/bin" bashPin a specific release with MISTRAL_VERSION (plain X.Y.Z); unset installs
the latest:
curl -fsSL https://mistral.ai/cli/install.sh | MISTRAL_VERSION=0.2.0 bashUpgrading is the same command as installing — re-run it and it overwrites the existing binary in place:
curl -fsSL https://mistral.ai/cli/install.sh | bashTo roll back to a known-good release, re-run it with MISTRAL_VERSION set.
Releases are immutable, so a bad version is never republished under the same
number.
The CLI prints a static completion script for your shell with --completions. The installer prints the command for your current shell when it finishes, but does not add completions to your shell profile itself. The bash line runs the installed CLI each time a shell starts, so it stays current; re-run the zsh or fish command after an upgrade so new commands complete.
Bash: add this line to ~/.bashrc:
command -v mistral >/dev/null && eval "$(mistral --completions bash)"Zsh: write the script to a directory on your fpath, then add that directory in ~/.zshrc before compinit runs:
mkdir -p ~/.zsh/completions && mistral --completions zsh > ~/.zsh/completions/_mistralfpath=(~/.zsh/completions $fpath)If your ~/.zshrc doesn't run compinit already (plain zsh, including the macOS default, doesn't), add this after the fpath line:
autoload -Uz compinit && compinitFish:
mkdir -p ~/.config/fish/completions && mistral --completions fish > ~/.config/fish/completions/mistral.fishOpen a new shell for the completions to load.
| OS | Architecture | Asset |
|---|---|---|
| macOS | Apple Silicon | mistral-darwin-arm64 |
| macOS | Intel | mistral-darwin-x64 |
| Linux | x86_64 | mistral-linux-x64 |
| Linux | arm64 / aarch64 | mistral-linux-arm64 |
Each release ships a checksums.txt with a SHA-256 line per binary:
base=https://github.com/mistralai/cli/releases/latest/download
curl -fsSLO "$base/mistral-darwin-arm64" # your platform's asset
curl -fsSLO "$base/checksums.txt"
sha256sum --ignore-missing -c checksums.txt # Linux
shasum -a 256 --ignore-missing -c checksums.txt # macOSchecksums.txt catches incomplete or corrupted downloads. It ships in the same
release as the binaries, so it is not an independent guarantee against a
malicious publisher — publisher integrity rests on write access to the release
repository.
rm -f ~/.mistral/bin/mistralThen remove ~/.mistral/bin from your PATH if you added it.