Navigate:
All Reposwinget-cli
~$WINGET0.1%

WinGet: Windows package manager with CLI and API

Multi-interface Windows package manager for Store and community repositories.

LIVE RANKINGS • 06:52 AM • STEADY
OVERALL
#140
3
DEVELOPER TOOLS
#27
2
30 DAY RANKING TREND
ovr#140
·Devel#27
STARS
25.2K
FORKS
1.6K
DOWNLOADS
7D STARS
+21
7D FORKS
+1
See Repo:
Share:

Learn more about winget-cli

WinGet is a package management tool for Windows systems that abstracts software installation and updates through multiple interfaces. The project consists of a command-line interface, PowerShell modules, and a COM API that allow programmatic access to package management functionality. It integrates with two default package sources: the Microsoft Store for consumer applications and the WinGet community repository hosted on GitHub. The tool requires Windows 10 build 17763 or later and manages installer execution, including handling elevation prompts and administrator privilege contexts.

winget-cli

1

Multiple interface layers

Provides access through CLI, PowerShell modules, and COM API, allowing integration at different levels of Windows automation and scripting workflows.

2

Dual package sources

Accesses packages from both the Microsoft Store and a community-maintained repository, with support for group policy configuration of additional sources.

3

Privilege-aware installation

Handles elevation prompts and administrator contexts differently based on execution mode, with distinct behavior when run with or without administrator privileges.


using Microsoft.Management.Deployment;

var packageManager = new PackageManager();
var catalog = packageManager.GetPackageCatalogByName("winget");

var searchResult = catalog.Search("Microsoft.PowerToys");
var package = searchResult.Matches[0].CatalogPackage;

var installOptions = new InstallOptions();
var installResult = await packageManager.InstallPackageAsync(package, installOptions);

vv1.12.420

Servicing release fixing portable package PATH removal on upgrade and App Installer progress/elevation bugs; no breaking changes noted.

  • Upgrade portable packages safely; dev mode disabled no longer strips PATH entries during upgrade.
  • Expect App Installer progress and elevation to work correctly on older OS builds missing Windows App Runtime.
vv1.12.350

WinGet v1.12 RC2 replaces WinUI 2 with Windows App Runtime 1.8 dependency and ships production font install/uninstall with new winget-font source.

  • Update App Installer dependency from WinUI 2 to Windows App Runtime 1.8 before upgrading to avoid runtime issues.
  • Use new `winget-font` source for font packages; install/uninstall now supports user and machine scopes via manifest.
vv1.12.340

App Installer now requires Windows App Runtime 1.8 (replaces WinUI 2 dependency); font install/uninstall is production-ready with new winget-fonts source.

  • Update dependencies to Windows App Runtime 1.8 before upgrading; WinUI 2 is no longer used.
  • Use `winget search font -s winget-font` to install fonts; manifest schema v1.12 adds Font as InstallerType.


[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers