Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
The Windows App Development CLI is currently in public preview. Features and commands may change before the final release. Share your feedback by creating an issue.
The Windows App Development CLI (winapp CLI) is a single command-line interface for managing Windows SDKs, packaging, generating app identity, manifests, certificates, and using build tools with any app framework. This tool bridges the gap between cross-platform development and Windows-native capabilities.
Whether you're building with .NET/Win32, CMake, Electron, or Rust, this CLI gives you access to:
- Modern Windows APIs - Windows App SDK and Windows SDK with automatic setup and code generation
- Package Identity - Debug and test by adding package identity without full packaging
- MSIX Packaging - App packaging with signing and Store readiness
- Developer Tools - Manifests, certificates, assets, and build integration
Why package identity?
Many powerful Windows APIs require your app to have package identity. With identity, your app gains access to features like notifications, OS integration, and on-device AI. For a full list of what package identity unlocks and help choosing the right packaging model, see Packaging overview.
Installation
WinGet
The easiest way to install the CLI is via WinGet (Windows Package Manager):
winget install Microsoft.winappcli --source winget
NPM
For Electron projects, install via NPM:
npm install @microsoft/winappcli --save-dev
GitHub Actions / Azure DevOps
For CI/CD pipelines, use the setup-WinAppCli action to automatically install the CLI on your runners/agents.
Manual download
Download the latest build from GitHub Releases.
Verify installation
Once installed, verify the installation by calling the CLI:
winapp --help
Or if using Electron/Node.js:
npx winapp --help
Supported frameworks
winapp CLI works with a variety of app frameworks:
| Framework | Guide |
|---|---|
| .NET / WPF / WinForms | Get started with .NET |
| C++ (CMake) | Get started with C++ |
| Electron | Get started with Electron |
| Rust | Get started with Rust |
| Tauri | Get started with Tauri |
| Flutter | Get started with Flutter |
Commands overview
| Category | Commands |
|---|---|
| Setup | init, restore, update |
| Packaging | pack, create-debug-identity |
| Manifests | manifest generate, manifest update-assets |
| Certificates & Signing | cert generate, cert install, sign |
| Utilities | tool, store, get-winapp-path |
| Node.js/Electron | node create-addon, node add-electron-debug-identity, node clear-electron-debug-identity |
For the full CLI reference, see CLI reference.
Open source
winapp CLI is open source. You can find the source code, file issues, and contribute on GitHub.
Related topics
Windows developer