Musher Commands
Complete command reference for the musher CLI.
Authentication
musher auth login
Authenticate with the Musher platform using your API key.
musher auth loginPrompts for your API key interactively. The credential is stored in your OS keyring (or a fallback file). See Configuration for storage details.
musher auth logout
Clear stored credentials from your machine.
musher auth logoutmusher auth status
Display your authenticated identity and writable namespaces.
musher auth statusUser: [email protected]
Namespaces: acme (owner), acme-labs (member)Consumer Commands
Top-level shortcuts for discovering and using bundles. These are the primary commands for bundle consumers.
musher search
Search the Musher Hub for bundles. Opens an interactive TUI with live search results. In non-interactive mode, falls back to batch output.
musher search [query]| Flag | Description |
|---|---|
--type <type> | Filter by asset type (e.g. skill, agent) |
--sort <field> | Sort results |
musher search "code review"musher load
Load a bundle from the registry and prepare it for use with a harness. Opens an interactive TUI to preview the bundle and select a harness. In non-interactive mode, falls back to batch output.
musher load <namespace>/<slug>[:<version>]| Flag | Description |
|---|---|
--force | Re-download even if already cached |
--no-tui | Disable TUI mode (use batch output) |
musher load acme/code-review
musher load acme/code-review:1.0.0musher run
Load a bundle and run it with a harness in one step. Downloads the bundle (if not cached), materializes assets into the harness's directory layout, launches the harness, and cleans up injected files when the session ends.
musher run <namespace>/<slug>[:<version>]| Flag | Description |
|---|---|
--harness <name> | Target harness (e.g. claude, cursor) |
--project-dir <path> | Project directory to run in |
--force | Re-download even if already cached |
musher run acme/code-review --harness claude
musher run acme/code-review:1.0.0 --harness cursorBundle Authoring
Commands for creating and publishing bundles. These are under the musher bundle subcommand group.
musher bundle init
Scaffold a new bundle project in the current directory. Creates musher.yaml, skill
templates, and a README.
musher bundle init| Flag | Description |
|---|---|
--namespace <name> | Pre-fill the namespace field |
--slug <name> | Pre-fill the bundle slug |
--empty | Create musher.yaml only, without scaffolding templates |
musher bundle init --namespace acme --slug code-review-kitmusher bundle add
Register asset files in your musher.yaml bundle definition.
musher bundle add [path...]| Flag | Description |
|---|---|
--all | Discover and register all conventional assets in the project |
# Add specific files
musher bundle add skills/code-review/SKILL.md agents/review/AGENT.yaml
# Auto-discover all conventional assets
musher bundle add --allmusher bundle remove
Remove asset entries from your musher.yaml bundle definition.
musher bundle remove <asset-id>| Flag | Description |
|---|---|
--all | Remove all registered assets |
musher bundle remove my-old-skillmusher bundle validate
Validate the bundle definition and verify that all referenced source files exist.
musher bundle validate✓ musher.yaml is valid
✓ 3 assets found
✓ All source files exist
✓ Bundle is ready to push| Flag | Description |
|---|---|
--file <path> | Path to musher.yaml (default: current directory) |
musher bundle push
Validate the bundle and push an immutable version to the registry.
musher bundle push✓ Bundle validated
✓ Pushed acme/code-review-kit:1.0.0
OCI ref: registry.musher.dev/acme/code-review-kit:1.0.0| Flag | Description |
|---|---|
--file <path> | Path to musher.yaml (default: current directory) |
--dry-run | Validate and show what would be pushed without actually pushing |
--publish-to-hub | Also create or update the public Hub listing after pushing |
musher bundle pull
Download a bundle from the registry to your local cache. Use --output-dir to extract flat
files to a specific directory.
musher bundle pull <namespace>/<slug>[:<version>]| Flag | Description |
|---|---|
-o <dir> | Extract bundle contents to a directory |
--force | Re-download even if already cached |
--json | Output structured JSON with bundle metadata and file paths |
musher bundle pull acme/code-review-kit:1.0.0 -o ./bundlesmusher bundle load
Download a bundle and prepare it for use with a harness (non-interactive). This is the batch
equivalent of the interactive musher load command.
musher bundle load <namespace>/<slug>[:<version>]| Flag | Description |
|---|---|
--harness <name> | Target harness (e.g. claude) |
--force | Re-download even if already cached |
musher bundle load acme/code-review --harness claudemusher bundle yank
Soft-withdraw a published version from resolution. Yanked versions won't be returned by resolve queries but remain visible in detail views for audit purposes.
musher bundle yank <namespace>/<slug>:<version>| Flag | Description |
|---|---|
--reason <text> | Record why the version was yanked (recommended) |
musher bundle yank acme/code-review-kit:1.0.0musher bundle unyank
Restore a previously yanked version, making it available for resolution again.
musher bundle unyank <namespace>/<slug>:<version>musher bundle unyank acme/code-review-kit:1.0.0Hub
Manage public listings on Musher Hub. The Hub is the public discovery layer — you can push bundles to the registry without listing them on the Hub.
musher hub search
Search for bundles on the Hub (non-interactive). Omit the query to see recently updated bundles.
For interactive search, use musher search instead.
musher hub search [query]musher hub search code-reviewmusher hub info
Show detailed information about a bundle listing, including available versions.
musher hub info <namespace>/<slug>musher hub info acme/code-review-kitmusher hub list
List all bundles published under a namespace.
musher hub list <namespace>musher hub list acmemusher hub categories
List available Hub categories for bundle listings.
musher hub categoriesmusher hub publish
Create or update a public Hub listing for a bundle. Requires description, readme, and license or licenseFile in your musher.yaml.
musher hub publish <namespace>/<slug>musher hub publish acme/code-review-kitmusher hub deprecate
Mark a bundle listing as deprecated on the Hub.
musher hub deprecate <namespace>/<slug>musher hub undeprecate
Remove the deprecation marker from a bundle listing.
musher hub undeprecate <namespace>/<slug>Configuration
musher config get
Get a configuration value.
musher config get <key>musher config get api_urlmusher config set
Set a configuration value.
musher config set <key> <value>musher config set api_url https://api.musher.devmusher config list
List all configuration values.
musher config listCache
Manage the local bundle cache.
musher cache info
Show cache location and size.
musher cache infomusher cache list
List cached bundles.
musher cache listmusher cache clean
Remove all cached bundles.
musher cache cleanmusher cache prune
Remove stale or unused entries from the cache.
musher cache pruneMaintenance
musher doctor
Run diagnostic checks on your environment — verifies authentication, registry connectivity, and CLI configuration.
musher doctor✓ CLI version: 0.4.2
✓ Authenticated as [email protected]
✓ Registry reachable: registry.musher.dev
✓ Keyring availablemusher update
Update the musher CLI to the latest version.
musher updatemusher version
Display the installed CLI version and build information.
musher versionmusher 0.4.2
commit: a1b2c3d
built: 2026-03-15T10:30:00Zmusher completion
Generate shell completion scripts for your terminal.
# Add to ~/.bashrc
eval "$(musher completion bash)"# Add to ~/.zshrc
eval "$(musher completion zsh)"musher completion fish | sourceGlobal Flags
These flags are available on all commands:
| Flag | Description |
|---|---|
--api-url <url> | Override the default API endpoint |
--api-key <key> | Supply credentials directly (prefer MUSHER_API_KEY env var) |
--json | Output in JSON format |
--quiet | Minimal output for automation |
--no-color | Disable colored output |
--no-input | Disable interactive prompts |
--no-tui | Disable TUI mode (use batch output) |