Musher is the CLI for musher.dev. Use it to authenticate against the Musher platform and deploy containerized applications.
macOS / Linux (or WSL):
curl -fsSL https://get.musher.dev | shWindows (PowerShell):
irm https://get.musher.dev/install.ps1 | iexFrom source (requires Go 1.26.2+):
go install github.com/musher-dev/musher-cli/cmd/musher@latest- Musher CLI — installed above.
- A Musher account and API key — create or manage keys at console.musher.dev.
Authenticate and check your identity:
musher auth login
musher auth statusVerify your setup:
musher doctorThe Musher platform moved from a bundle registry to a deployment product. This
CLI is being rebuilt to match. The bundle and hub commands have been removed:
their backend endpoints were deleted (platform ADR 0062) and returned 404.
Deployment commands (musher deploy, status, logs) are landing in
subsequent releases. Today the CLI covers authentication, configuration, and
diagnostics.
- Organization — The billing and access-control boundary. An API key is bound to exactly one.
- Environment — An isolated execution context (for example
staging,production) within an organization. - Deployment — The deployable unit, and the app itself. It is created from a blueprint and runs a pinned container image.
- Replica — One running instance of a deployment. You scale deployments, not replicas.
| Command | Description |
|---|---|
musher auth login |
Authenticate with an API key. --no-verify stores without a round trip |
musher auth logout |
Clear stored credentials |
musher auth status |
Show the authenticated identity and organization |
| Command | Description |
|---|---|
musher config list |
List all configuration values |
musher config get <key> |
Read a configuration value |
musher config set <key> <value> |
Write a configuration value |
musher config profile |
Manage configuration profiles |
| Command | Description |
|---|---|
musher doctor |
Diagnostic checks |
musher update |
Self-update from GitHub Releases |
musher version |
Show version info |
musher completion |
Shell completions |
| Item | Location |
|---|---|
| Config file | ~/.config/musher/config.yaml |
| Credentials (keyring) | OS keyring, service musher/<api-host> |
| Credentials (fallback) | ~/.local/share/musher/credentials/<hostID>/api-key |
| Logs | ~/.local/state/musher/logs/musher.log |
Auth precedence: MUSHER_API_KEY env var / --api-key flag > OS keyring > credentials file.
API endpoint: --api-url flag > MUSHER_API_URL env var > api.url config key (default: https://api.musher.dev).
All paths follow XDG conventions. Override with MUSHER_CONFIG_HOME, MUSHER_DATA_HOME, MUSHER_STATE_HOME, or MUSHER_HOME.
| Flag | Description |
|---|---|
--api-url |
Override the API endpoint |
--api-key |
Provide an API key directly (overrides keyring) |
--json |
Output results as JSON |
--quiet |
Minimal output (for CI) |
--no-color |
Disable colored output |
--no-input |
Disable interactive prompts |
See CONTRIBUTING.md for development setup, building, testing, and contribution guidelines.