cha133/msstore-cli

★ 0Forks 0TypeScriptGitHub ↗Compare

README

msstore-cli

A small Bun CLI for resolving Microsoft Store package links from Microsoft's official delivery network. Provide a Store URL, Product ID, or the identity of an installed Windows package to list matching MSIX/AppX packages, open them in your browser, or download them directly.

Requirements

  • Bun 1.0 or later
  • Windows is required only when resolving an installed package identity

Installation

# After cloning the repository:
cd msstore-cli
bun install
bun link

After linking, use either msstore-cli or the shorter msdl alias.

Usage

# List links for the current architecture
msdl 9PLM9XGG6VKS
msdl links https://apps.microsoft.com/detail/9plm9xgg6vks

# Search the Store catalog by title or keyword
msdl search ChatGPT
msdl search "Windows Terminal"

# Resolve an installed Windows package by its short identity
msdl OpenAI.Codex

# Open every matching package in the default browser
msdl open 9PLM9XGG6VKS

# Download packages and show progress
msdl download 9PLM9XGG6VKS --out ./downloads

# Produce JSON or select an architecture or resolver
msdl links 9PLM9XGG6VKS --json
msdl links 9PLM9XGG6VKS --arch arm64
msdl links 9PLM9XGG6VKS --resolver remote

Run msdl --help for the complete option list.

Resolvers

  • auto (default) queries Microsoft Display Catalog and FE3 first, then falls back to the remote resolver if FE3 fails.
  • microsoft uses only Microsoft services and reports any failure directly.
  • remote resolves packages through https://store.uihtm.com/api/packages. Returned download URLs must still belong to Microsoft's delivery domains or they are rejected.

The search command queries Microsoft Display Catalog only. Search terms match Store titles, which may differ from installed package identities. For example, use msdl search ChatGPT to search by title, or msdl OpenAI.Codex to resolve that locally installed package identity on Windows.

When an installed package identity is used, the output includes its installed version, the latest Store version, and update status:

Current:  26.721.3996.0
Latest:   26.730.8199.0
Update:   Update available

Download links are short-lived signed URLs generated by Microsoft. Run the command again if a link has expired. The CLI validates the final download host and removes partial files when a download fails.

Security and license

  • This tool does not bypass application licensing or DRM.
  • The remote resolver receives the queried Product ID and the requester's IP address.
  • The FE3 client uses the GPL-3.0-only @query-store-links/storelib_rs, so this project is licensed under GPL-3.0-only.

Contributors

cha133

Issues