msstore-cli
Microsoft Store Developer CLI (msstore) for publishing Windows applications to the Microsoft Store. Use when asked to configure Store credentials, list Store apps, check submission status, publish submissions, manage package flights, set up CI/CD for Store publishing, or integrate with Partner Cente
By github · 7,062 installs
npx skills add github/awesome-copilot --skill msstore-cli
Source repository · Upstream listing
Microsoft Store Developer CLI (msstore)
The Microsoft Store Developer CLI ( msstore ) is a cross platform command line interface for publishing and managing applications in the Microsoft Store. It integrates with Partner Center APIs and supports automated publishing workflows for various application types.
When to Use This Skill
Use this skill when you need to:
Configure Store credentials for API access
List applications in your Store account
Check the status of a submission
Publish submissions to the Store
Package applications for Store submission
Initialize projects for Store publishing
Manage package flights (beta testing)
Set up CI/CD pipelines for automated Store publishing
Manage gradual rollouts of submissions
Update submission metadata programmatically
Prerequisites
Windows 10+, macOS, or Linux
.NET 9 Desktop Runtime (Windows) or .NET 9 Runtime (macOS/Linux)
Partner Center account with appropriate permissions
Azure AD app registration with Partner Center API access
msstore CLI installed via one of these methods:
Microsoft Store : [Download](https://www.microsoft.com/store/apps/9P53PC5S0PHJ)
WinGet : winget install "Microsoft Store Developer CLI"
Manual : Download from [GitHub Releases](https://aka.ms/msstoredevcli/releases)
Partner Center Setup
Before using msstore, you need to create an Azure AD application with Partner Center access:
1. Go to [Partner Center](https://partner.microsoft.com/dashboard)
2. Navigate to Account settings User management Azure AD applications
3. Create a new application and note the Tenant ID , Client ID , and Client Secret
4. Grant the application appropriate permissions (Manager or Developer role)
Core Commands Reference
info Print Configuration
Display the current credential configuration.
Options:
Option Description
v, verbose Print verbose output
reconfigure Configure Credentials
Configure or update Microsoft Store API credentials.
Options:
Option Description
t, tenantId Azure AD Tenant ID
s, sellerId Partner Center Seller ID
c, clientId Azure AD Application Client ID
cs, clientSecret Client Secret for authentication
ct, certificateThumbprint Certificate thumbprint (alternative to client secret)
cfp, certificateFilePath Certificate file path (alternative to client secret)
cp, certificatePassword Certificate password
reset Reset credentials without full reconfiguration
Examples:
settings CLI Settings
Change settings of the Microsoft Store Developer CLI.
Options:
Option Description
t, enableTelemetry Enable (true) or disable (false) telemetry
Set Publisher Display Name
Sets the default Publisher Display Name for the init command.
apps Application Management
List and retrieve application information.
List Applications
Lists all applications in your Partner Center account.
Get Application Details
Arguments:
Argument Description
productId The Store product ID (e.g., 9NBLGGH4R315)
Example:
submission Submission Management
Manage Store submissions.
Sub Command Description
status Get submission status
get Get submission metadata and package info
getListingAssets Get listing assets of a submission
updateMetadata Update submission metadata
poll Poll submission status until complete
publish Publish a submission
delete Delete a submission
Get Submission Status
Get Submission Details
Update Metadata
Where <metadata is a JSON string with the updated metadata. Because JSON contains characters that shells interpret (quotes, braces, etc.), you must quote and/or escape the value appropriately:
Bash/Zsh : Wrap the JSON in single quotes so the shell passes it through literally.
PowerShell : Use single quotes (or escape double quotes inside a double quoted string).
cmd.exe : Escape each inner double quote with a backslash.
Tip: For complex or multi line metadata, save the JSON to a file and pass its contents instead to avoid quoting issues:
Options:
Option Description
s, skipInitialPolling Skip initial status polling
Publish Submission
Poll Submission
Polls until the submission status is PUBLISHED or FAILED.
Delete Submission
Options:
Option Description
no confirm Skip confirmation prompt
init Initialize Project for Store
Initialize a project for Microsoft Store publishing. Automatically detects project type and configures Store identity.
Arguments:
Argument Description
pathOrUrl Project directory path or PWA URL
Options:
Option Description
n, publisherDisplayName Publisher Display Name
package Also package the project
publish Package and publish (implies package)
f, flightId Publish to a specific flight
prp, packageRolloutPercentage Gradual rollout percentage (0 100)
a, arch Architecture(s): x86, x64, arm64
o, output Output directory for packages
ver, version Version to use when building
Supported Project Types:
Windows App SDK / WinUI 3
UWP
.NET MAUI
Flutter
Electron
React Native for Desktop
PWA (Progressive Web Apps)
Examples:
package Package for Store
Package an application for Microsoft Store submission.
Arguments:
Argument Description
pathOrUrl Project directory path or PWA URL
Options:
Option Description
o, output Output directory for the package
a, arch Architecture(s): x86, x64, arm64
ver, version Version for the package
Examples:
publish Publish to Store
Publish an application to the Microsoft Store.
Arguments:
Argument Description
pathOrUrl Project directory path or PWA URL
Options:
Option Description
i, inputFile Path to existing .msix or .msixupload file
id, appId Application ID (if not initialized)
nc, noCommit Keep submission in draft state
f, flightId Publish to a specific flight
prp, packageRolloutPercentage Gradual rollout percentage (0 100)
Examples:
flights Package Flight Management
Manage package flights (beta testing groups).
Sub Command Description
list List all flights for an app
get Get flight details
delete Delete a flight
create Create a new flight
submission Manage flight submissions
List Flights
Get Flight Details
Create Flight
Options:
Option Description
g, group ids Flight group IDs (comma separated)
r, rank higher than Flight ID to rank higher than
Delete Flight
Flight Submissions
Flight Rollout Management
Common Workflows
Workflow 1: First Time Store Setup
Workflow 2: Initialize and Publish New App
Workflow 3: Update Existing App
Workflow 4: Gradual Rollout
Workflow 5: Beta Testing with Flights
Workflow 6: CI/CD Pipeline Integration
Integration with winapp CLI
The winapp CLI (v0.2.0+) integrates with msstore via the winapp store subcommand:
Use winapp store when you want a unified CLI experience for both packaging and publishing.
Troubleshooting
Issue Solution
Authentication failed Verify credentials with msstore info ; re run msstore reconfigure
App not found Ensure the product ID is correct; run msstore apps list to verify
Insufficient permissions Check Azure AD app role in Partner Center (needs Manager or Developer)
Package validation failed Ensure package meets Store requirements; check Partner Center for details
Submission stuck Run msstore submission poll <productId to check status
Flight not found Verify flight ID with msstore flights list <productId
Rollout percentage invalid Value must be between 0 and 100
Init fails for PWA Ensure URL is publicly accessible and has valid web app manifest
Environment Variables
The CLI supports environment variables for credentials:
Variable Description
MSSTORE TENANT ID Azure AD Tenant ID
MSSTORE SELLER ID Partner Center Seller ID
MSSTORE CLIENT ID Azure AD Application Client ID
MSSTORE CLIENT SECRET Client Secret
References
[Microsoft Store Developer CLI Documentation](https://learn.microsoft.com/windows/apps/publish/msstore dev cli/overview)
[CLI Commands Reference](https://learn.microsoft.com/windows/apps/publish/msstore dev cli/commands)
[GitHub Repository](https://github.com/microsoft/msstore cli)
[Partner Center API](https://learn.microsoft.com/windows/uwp/monetize/using windows store services)
[App Submission API](https://learn.microsoft.com/windows/uwp/monetize/create and manage submissions using windows store services)
[Package Flights Overview](https://learn.microsoft.com/windows/uwp/publish/package flights)
[Gradual Package Rollout](https://learn.microsoft.com/windows/uwp/publish/gradual package rollout)