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.
WinGet is a command line tool enabling users to discoverinstallupgraderemove and configure applications on Windows 10Windows 11and Windows Server 2025 computers. This tool is the client interface to the Windows Package Manager service.
Install WinGet
WinGet the Windows Package Manager is available on Windows 11modern versions of Windows 10and Windows Server 2025 as a part of the App Installer. The App Installer is a System Component delivered and updated by the Microsoft store on Windows Desktop versionsand via Updates on Windows Server 2025.
Note
The WinGet command line tool is only supported on Windows 10 version 1809 (build 17763) or later. WinGet will not be available until you have logged into Windows as a user for the first timetriggering Microsoft Store to register the Windows Package Manager as part of an asynchronous process. If you have recently logged in as a user for the first time and find that WinGet is not yet availableyou can open PowerShell and enter the following command to request this WinGet registration: Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.
Install WinGet preview version [Developers Only]
WinGet is included in the App Installer. To try the latest Windows Package Manager featuresyou can install a preview build one of the following ways:
Download the latest WinGet preview version. Read the Release notes for WinGet preview to learn about any new features. Installing this package will give you the preview version of the WinGet clientbut it will not enable automatic updates of new preview versions from the Microsoft Store.
Use a Microsoft Account (MSA)workschool or Azure Active Directory (AAD) account to sign up for the Windows Insider Program in the Canary or Dev Channels. The Windows Insider Canary and Dev Channels include automatic updates of new preview versions of WinGet from the Microsoft Store.
Install WinGet on Windows Sandbox
Windows Sandbox provides a lightweight desktop environment to safely run applications in isolation. Software installed inside the Windows Sandbox environment remains "sandboxed" and runs separately from the host machine. Windows Sandbox does not include WinGetnor the Microsoft Store appso you will need to download the latest WinGet package from the WinGet releases page on GitHubor use the Repair-WinGetPackageManager cmdlet.
To install the stable release of WinGet on Windows Sandboxfollow these steps from a Windows PowerShell command prompt:
$progressPreference = 'silentlyContinue'
Write-Host "Installing WinGet PowerShell module from PSGallery..."
Install-PackageProvider -Name NuGet -Force | Out-Null
Install-Module -Name Microsoft.WinGet.Client -Force -Repository PSGallery | Out-Null
Write-Host "Using Repair-WinGetPackageManager cmdlet to bootstrap WinGet..."
Repair-WinGetPackageManager -AllUsers
Write-Host "Done."
To install the WinGet PowerShell module in machine scopeyou can use the -Scope AllUsers parameter with the Install-Module cmdlet. If you would like a preview version of WinGetyou can add -IncludePrerelease parameter with the Repair-WinGetPackageManager cmdlet. To see the available parameters for the Repair-WinGetPackageManager cmdletyou can run Get-Help Repair-WinGetPackageManager -Full.
For more information on Windows Sandboxincluding how to install a sandbox and what to expect from it's usagesee the Windows Sandbox docs.
Administrator considerations
Installer behavior can be different depending on whether you are running WinGet with administrator privileges.
When running WinGet without administrator privilegessome applications may require elevation to install. When the installer runsWindows will prompt you to elevate. If you choose not to elevatethe application will fail to install.
When running WinGet in an Administrator Command Promptyou will not see elevation prompts if the application requires it. Always use caution when running your command prompt as an administratorand only install applications you trust.
Use WinGet
After App Installer is installedyou can run WinGet by typing 'winget' from a Command Prompt.
One of the most common usage scenarios is to search for and install a favorite tool.
To search for a tooltype
winget search <appname>.After you have confirmed that the tool you want is availableyou can install the tool by typing
winget install <appname>. The WinGet tool will launch the installer and install the application on your PC.
In addition to install and searchWinGet provides a number of other commands that enable you to show details on applicationschange sourcesand validate packages. To get a complete list of commandstype:
winget --help.
Some users have reported issues with the client not being on their PATH.
Commands
The current preview of the WinGet tool supports the following commands.
| Command | Description |
|---|---|
| install | Installs the specified application. |
| show | Displays details for the specified application. |
| source | Addsremovesand updates the Windows Package Manager repositories accessed by WinGet. |
| search | Searches for an application. |
| list | Display installed packages. |
| upgrade | Upgrades the given specified application. |
| uninstall | Uninstalls the specified application. |
| hash | Generates the SHA256 hash for the installer. |
| validate | Validates a manifest file for submission to the Windows Package Manager repository. |
| settings | Open settings. |
| features | Shows the status of experimental features. |
| export | Exports a list of the installed packages. |
| import | Installs all the packages in a file. |
| pin | Manage package pins. |
| configure | Configures the system into a desired state. |
| download | Downloads the specified application's installer. |
| repair | Repairs the selected application. |
| dscv3 | PowerShell Desired State Configuration (DSC) v3 resource commands. |
Options
The WinGet tool supports the following options.
| Option | Description |
|---|---|
| -v--version | Returns the current version of WinGet. |
| --info | Provides you with all detailed information on WinGetincluding the links to the licenseprivacy statementand configured group policies. |
| -?--help | Shows additional help for WinGet. |
| --wait | Prompts the user to press any key before exiting. |
| --logs,--open-logs | Opens the default logs location. |
| --verbose,--verbose-logs | Enables verbose logging for winget. |
| --nowarn,--ignore-warnings | Suppresses warning outputs. |
| --disable-interactivity | Disables interactive prompts. |
| --proxy | Sets a proxy to use for this execution. |
| --no-proxy | Disables the use of proxy for this execution. |
Supported installer formats
WinGet supports the following types of installers:
- EXE (with Silent and SilentWithProgress flags)
- ZIP
- INNO
- NULLSOFT
- MSI
- WIX
- APPX
- MSIX
- BURN
- PORTABLE
Scripting WinGet
The Microsoft.WinGet.Client PowerShell module is available on the PowerShell Gallery.
Debugging and troubleshooting
WinGet provides logging to help diagnose issues. For troubleshooting and details on loggingsee Debugging and troubleshooting.
Missing tools
If the community repository does not include your tool or applicationsubmit a package to our repository. By adding your favorite toolit will be available to you and everyone else.
Customize WinGet settings
You can configure the WinGet command line experience by modifying the settings.on file. For more informationsee the page for the settings command.
Open source details
The WinGet tool is open source software available on GitHub in the repo https://github.com/microsoft/winget-cli/. The source for building the client is located in the src folder.
The source for WinGet is contained in a Visual Studio 2022 C++ solution. To build the solution correctlyclone the repository and run the appropriate WinGet Configuration file located in the ".github" directory.
We encourage you to contribute to the WinGet source on GitHub. You must first agree to and sign the Microsoft CLA. Pull requests should come from a branch on your own fork.
Troubleshooting
The winget-cli repo maintains a list of common issues and common errorsalong with recommendations on how to resolve:
Windows developer