Installer Hashes
| Description | Filename | sha256 hash |
|---|---|---|
| Per user - x64 | PowerToysUserSetup-0.100.0-x64.exe | A5EB64B8CEEF096AAFBFC18E73312B45E9D48FC60FB16676429688468C9A08D6 |
| Per user - ARM64 | PowerToysUserSetup-0.100.0-arm64.exe | A4D7EB580A7EF36E7C98CCC84E9EBB552C9D7071DCA35B6EB395F938D03FADCF |
| Machine wide - x64 | PowerToysSetup-0.100.0-x64.exe | 740C01945528E453C02490921CA2BD0E399021A80CF90DCF01DB53158377D0E8 |
| Machine wide - ARM64 | PowerToysSetup-0.100.0-arm64.exe | 19C8BD93B9A42B7FC2FF0E6F2091590F8D89B98ADEA20CC73D9023E464707B12 |
Highlights
PowerToys 0.100 introduces the brand-new Shortcut Guide, a major Command Palette update with the new Extension Gallery and multi-monitor Dock support, and a wave of improvements to Power Display. We've also upgraded PowerToys to .NET 10, improved auto-update reliability, reduced installer size, and continued modernizing the app experience across the suite.
⌨️ Introducing the new Shortcut Guide
The new Shortcut Guide has been designed and built from the ground up. The new experience appears as a pane on the side of your screen and automatically detects the active application when invoked, showing the shortcuts that are relevant to what you're currently doing. In addition to app-specific shortcuts, Shortcut Guide also includes a wide range of Windows shortcuts and shortcuts from enabled PowerToys utilities. Want to see if your favorite app is supported? Check out the documentation for the current list of supported applications. If you'd like to add support for another app, we'd love your help! Feel free to open a pull request, or create an issue with a link to the app's shortcut documentation.
Big thanks to @noraa-junker all the great work on this new utility!
#40834 by @noraa-junker, #40834 by @noraa-junker
⚡ Command Palette: new Extension Gallery, and multi-monitor Dock (and more!)
Command Palette was built with extensibility in mind. Developers can create their own extensions, distribute them through the Microsoft Store or WinGet, and build powerful experiences that help users get things done faster. One piece of feedback we've heard consistently is that discovering and installing extensions wasn't always easy. That's why we're introducing the Extension Gallery. Available directly from Command Palette Settings, the Extension Gallery makes it easy to browse, discover, install, update, and remove extensions without leaving Command Palette. Whether you're looking for new capabilities or managing existing extensions, everything is now just a few clicks away.
The Dock has also received a major upgrade with multi-monitor support. Each monitor can now have its own independent Dock configuration, making it easy to tailor your setup for every display in your workspace. You can choose which monitors should display a Dock directly from Command Palette Settings, and the improved Pin to Dock experience now lets you choose exactly where a command should be pinned. Whether you want different tools on different screens or dedicated docks for specific workflows, configuring your setup is now more flexible than ever.
On top of that, the Performance Monitor extension has gained a new Battery widget, showing charge level, charging status, and estimated time remaining. We've also added support for pinning individual metrics such as CPU, Memory, GPU, Network, and Battery directly to the Dock.
Beyond these features, we've shipped dozens of fixes and improvements across Command Palette, including better search experiences, reliability improvements, accessibility enhancements, performance optimizations, and extension platform updates.
A huge thanks to @jiripolasek for the sustained Command Palette work across this release!
🖥️ PowerDisplay improvements
This release focuses heavily on reliability, compatibility, and monitor detection improvements. Startup is now significantly faster on many systems, monitor identification is more reliable across reboots, and monitor settings are preserved more consistently. We've also introduced a new Max Compatibility Mode for displays that don't properly advertise DDC capabilities, helping Power Display work with a wider range of monitors. Several usability improvements have landed as well. The flyout can now be dismissed using Escape, sliders support mouse wheel adjustment, and displays are automatically rescanned when your PC wakes from sleep.
🔍 ZoomIt: webcam capture and recording improvements
This release adds support for a webcam overlay while recording, making it easier to create demos, presentations, and tutorials. We've also added support for appending multiple clips with transitions, allowing you to stitch recordings together without leaving ZoomIt.
🔄 Foundations and platform improvements
This release, we have also focused on making the PowerToys foundations better: we've upgraded the project to .NET 10, helping us stay current with the latest platform improvements and tooling and making the overall experience faster! We've also reduced the installer footprint (by 15%), making downloads smaller and installations more efficient.
Big thanks to @snickler for driving the .NET 10 upgrade!
Auto-update has also become more reliable. PowerToys now properly relaunches after updating, provides clearer success notifications, and automatically backs up configuration files before updates so settings can be restored if corruption is detected.
As part of our ongoing modernization efforts, both Quick Accent and Workspaces have moved away from custom WPF theming libraries and now use native Fluent-inspired WPF styling. This helps them better align with the overall PowerToys experience and modern Windows design language. Workspaces in particular received a significant UX refresh, with updated typography, spacing, layout improvements, and a cleaner overall experience.
🧩 Other notable changes
- Keyboard Manager: The new WinUI 3 editor is now enabled by default.
- Mouse Without Borders: Added a new Refresh Connections action to quickly reconnect devices.
- Image Resizer: Changes to settings can now be picked up automatically without restarting the experience.
- Quick Accent: Improved reliability on high-DPI and multi-monitor setups, along with support for Greek Polytonic characters.
- Peek: Added an option to disable file preview tooltips.
- PowerToys Run: Improved calculator handling for complex-number scenarios and documented a new community Disk Analyzer plugin.
Full release notes
Advanced Paste
- Fixed Advanced Paste clipboard-to-JSON conversion so clipboard read failures return an empty result instead of surfacing an exception in #48124
Command Palette
Extension Gallery & Extensions
-
Added the Command Palette Extension Gallery so users can discover, browse, install, update, and uninstall community extensions from within Command Palette, with cached gallery data, extension details/screenshots, and WinGet status/progress integration in #46636 by @jiripolasek
-
Added Command Palette parameter pages so extensions can prompt for lightweight command inputs directly in the search experience, including sample pages and SDK support for parameter runs in #47826
-
Updated Command Palette bookmarks to collect placeholder values as inline parameters, so bookmarked commands can be filled in directly instead of opening a separate placeholders page in #47886
-
Improved Command Palette Extension Gallery link handling so only HTTP/HTTPS homepage, author, install, and metadata links are shown or opened from the gallery UI in #47898 by @jiripolasek
-
Fixed Command Palette Extension Gallery UI bindings so WinGet operation indicators continue to update correctly without build warnings in #47899 by @jiripolasek
-
Fixed an AOT-only Command Palette Extension Gallery crash when opening an extension page with screenshots in #48065
-
Updated the Command Palette extension template to use the 0.11 SDK package in #48066
-
Improved Command Palette accessibility so Narrator announces checkbox labels on the Installed Apps page in Extensions settings in #48135 by @chatasweetie
Dock
-
Added Command Palette Dock support for customizing dock bands separately per monitor, allowing multi-monitor setups to keep independent dock layouts in #46915
-
Added Command Palette Dock edit mode support for dragging dock bands between monitors, so pinned commands can move across per-monitor dock layouts in #47921
-
Added Command Palette Dock drag-and-drop bookmarking for files and URLs, immediately creating and pinning bookmarks, improving pinned folder bookmarks so they open the Command Palette browse experience in #47989
-
Fixed Command Palette dock context menu commands so Page commands and confirmation dialogs open the palette at the dock item when invoked from a dock item menu in #47991
-
Fixed Command Palette Dock band tooltips so they refresh when the item title or subtitle changes in #47557
-
Fixed Command Palette dock startup animations so items pinned to the End section animate consistently with Start and Center items in #48099
-
Fixed Command Palette dock subtitle visibility in compact mode so subtitles refresh correctly after async updates in #48088 by @michaeljolley
-
Fixed Command Palette hotkey navigation when the palette is showing a transient dock page in #48089 by @michaeljolley
-
Fixed a Command Palette dock window border that occasionally remained visible after disconnect/reconnect, by ensuring the owner HWND is set before frame removal in #48180
-
Improved the Command Palette Pin to Dock dialog by reordering controls so they appear above the preview, making the dialog easier to scan in #48250
Performance Monitor
-
Added a Battery widget to Command Palette Performance Monitor that shows live charge percentage, charging/AC status, and estimated time remaining, updating the dock-band battery icon to reflect current charge level and charging state in #47870 by @Knyrps
-
Added Command Palette Performance Monitor dock bands for individual metrics like CPU, memory, network, GPU, and battery when available in #47967
-
Fixed Command Palette Performance Monitor's CPU dock reading to use a 0–100% system CPU counter, preventing boosted CPUs from showing values above 100% in #47864 by @Knyrps
-
Improved Command Palette Performance Monitor network widgets by giving Send and Receive distinct up/down arrow icons and simplifying their labels in #48118
-
Reordered Command Palette Performance Monitor network dock bands to match Task Manager's send/receive order in #48098 by @michaeljolley
-
Fixed a Command Palette Performance Monitor crash when a GPU index falls outside the available range in #48103 by @michaeljolley
-
Fixed a Command Palette Performance Monitor settings file path collision that could cause widget settings to overwrite one another in #48251 by @namdpran8
Calculator
- Added
rand()andrandi()to the Command Palette Calculator and improved error messages by distinguishing invalid expressions, NaN, and out-of-range results in #47725 by @daverayment - Fixed Command Palette Calculator parsing for multi-argument functions in cultures where comma is both thousands separator and argument separator, so expressions like
max(1,2)and grouped numbers are handled correctly in #47731 by @daverayment - Fixed the Command Palette and Run Calculator 'log' and 'ln' functions when whitespace separates the function name from its argument, so 'log (n)' computes log base 10 and 'ln (n)' no longer errors out in #47767 by @daverayment
Reliability & UX
-
Added a pinned commands section to the Command Palette Home page with context-menu actions for reordering pinned commands in #45869 by @jiripolasek
-
Updated Command Palette Shell provider to behave more like Windows Run, improving command execution and suggestions for network paths, NTFS paths, and other edge-case paths in #47642
-
Improved Command Palette Window Walker by showing a loading state while open windows are queried during search in #47919
-
Improved Command Palette list items by limiting visible tag pills to three and showing a +N overflow badge, preventing tags from crowding out titles in #47140
-
Added a Command Palette All Apps setting to hide app description subtitles in search results for a cleaner list view in #47128
-
Fixed Command Palette back navigation so the bottom command bar refreshes immediately when returning with Esc or Backspace in #47126
-
Fixed Command Palette Extensions settings text so single command and fallback command counts use singular wording in #47125
-
Improved Command Palette extension logging by routing extension messages to info, warning, or error logs according to their reported severity in #47896
-
Updated Command Palette versioning to 0.11 in #47841
-
Added stable Command Palette automation IDs so UI testing tools can reliably target controls and generated list items across sessions in #48033
-
Fixed Command Palette Dock positioning when opening palette items from secondary displays, so the palette appears on the correct monitor in #48061
-
Updated developer documentation with steps for debugging Command Palette directly through its Visual Studio solution filter in #48108 by @Morma016
-
Added Command Palette Remote Desktop support for connecting to arbitrary hostnames typed into the list page, in addition to discovered connections in #48069 by @michaeljolley
-
Improved Command Palette result scoring by synchronising fallback title and subtitle formatting so similar items rank consistently in #48085 by @michaeljolley
-
Added a Command Palette "Show details" / "Hide details" toggle (with an icon) to the context menu, replacing the previous separate entries in #48140 by @chatasweetie
FancyZones
- Added translator-comment guidance to the FancyZones Editor strings 'Space around zones' and 'Highlight distance' so localizers translate them as margin/padding and adjacent-zone detection distance, fixing misleading Japanese renderings in #47226
File Explorer
- Fixed a Markdown preview crash on UTF-8 files (notably CJK content) that exceeded WebView2's NavigateToString byte limit by switching the size check to count UTF-8 bytes and falling back to the temp-file rendering path when the threshold is exceeded in #47391
File Locksmith
- Fixed File Locksmith handling of Unicode file paths when passing paths between normal and elevated runs, preventing certain non-ASCII paths from being corrupted in #47361
Grab And Move
-
Fixed the LNK2038 C++/WinRT version mismatch breaking GrabAndMove on CI by adding the Microsoft.Windows.CppWinRT NuGet to GrabAndMove.vcxproj so it uses the repo-pinned CppWinRT instead of whatever the Windows SDK ships in #47910
-
Removed the "NEW" tag from the Grab And Move entry in Settings now that the module has shipped through a full release in #48174 by @moooyo
Image Resizer
- Added live settings reload to Image Resizer so external changes to settings.json take effect immediately without relaunching the flow in #45266 by @daverayment
- Improved Image Resizer accessibility so Narrator announces the Resize button by name and the window title now reads 'Image Resizer' instead of the generic 'WinUI Desktop' in #47752
Keyboard Manager
- Enabled the redesigned Keyboard Manager editor by default, so new installations open the WinUI 3 editor without changing settings in #48245
Mouse Without Borders
- Added Mouse Without Borders Refresh Connections to Quick Access and the Settings Dashboard so users can reconnect devices faster in #46025
- Refactored Mouse Without Borders logging cleanup with no intended user-facing behavior change in #44553 by @mikeclayton
Peek
- Added a 'Show file preview tooltip' toggle to Peek's Behavior settings so users can disable the on-hover metadata tooltip (filename, type, date modified, size), and fixed the binding so toggling off no longer leaves an empty popup attached in #46624
PowerDisplay
-
Improved Power Display by automatically disabling the feature after a detected DDC/CI capability crash and showing a Settings warning before users re-enable it in #47734
-
Fixed Power Display flyout keyboard handling so pressing Escape closes the window in #48026
-
Improved Power Display monitor detection by rescanning displays when the screen wakes and temporarily locking controls until the refresh completes in #47876
-
Updated PowerToys documentation to include telemetry events for Grab And Move and Power Display in #47228
-
Updated Power Display localization comments so the product name remains untranslated in UI strings, including the system tray tooltip in #47351
-
Improved Power Display monitor discovery by distinguishing internal panels from external monitors before applying brightness controls, reducing unnecessary DDC/CI probing on built-in displays in #47740
-
Fixed Power Display upgrades so existing per-monitor preferences are carried forward from older monitor IDs to the current stable IDs in #47977
-
Added a Power Display Max compatibility mode setting that can find monitors skipped by standard DDC discovery, with an immediate rescan and warning in Settings when enabled in #47875
-
Improved Power Display brightness, contrast, and volume sliders by committing changes after a short debounce and allowing mouse-wheel adjustments in #47756
-
Fixed Power Display brightness, contrast, and volume controls on monitors whose native DDC/CI ranges are not 0-100 by scaling slider percentages correctly in #47679
-
Added a Power Display Settings confirmation prompt before enabling the module and improved monitor diagnostics for troubleshooting in #48111
-
Fixed Power Display per-monitor settings so toggles persist across restarts, monitor reordering, and transient discovery failures in #47712
-
Added a built-in Power Display monitor blacklist so known problematic displays are skipped during DDC/CI discovery and reported in logs instead of being probed in #48051
-
Fixed a Power Display false-positive crash detection when the host process exits cooperatively, so the safety lockout no longer triggers on clean shutdowns in #48173 by @moooyo
-
Removed the "NEW" tag from the Power Display entry in Settings now that the module has shipped through a full release in #48174 by @moooyo
-
Reworked the Power Display warning dialog with clearer messaging, distinct warning kinds, and a dedicated dialog view-model so users get more actionable guidance after a DDC/CI issue in #48249
PowerToys Run
- Improved PowerToys Run Calculator to return a friendly error for expressions whose result is a complex number (e.g.
sqrt(-1)) instead of throwing during decimal conversion in #47506 by @MardSilva - Documented the third-party PowerToys Run plugin Community.PowerToys.Run.Plugin.DiskAnalyzer for scanning folders/drives to find the largest files and folders in #48106 by @thetsaw
Quick Accent
- Updated Quick Accent’s popup UI to standard PowerToys styling while keeping the accent selector experience unchanged in #46604
- Improved Quick Accent language selection consistency by sharing the same language list between the accent popup and Settings UI in #47211 by @daverayment
- Added Greek Polytonic as a Quick Accent language, making polytonic Greek characters available from matching letter keys and Settings in #47021 by @daverayment and @guidotorresmx
- Fixed Quick Accent popup sizing, positioning, and selection glitches on high-DPI or multi-monitor setups, and improved Shift-key detection for navigation in #46593 by @daverayment
Settings
-
Added Image Resizer size preset validation so empty or whitespace names are ignored, keeping presets named and easier to understand in #45425
-
Fixed the Settings UI resource list by removing a duplicate Quick Accent Greek Polytonic language entry, allowing Settings builds to complete cleanly in #48054
-
Improved Settings UI with refreshed PowerToys imagery, constrained OOBE/SCOOBE layouts, and cleaner General settings controls and icons in #48024
-
Fixed the Settings “No shortcuts to show” empty-state message so it displays with a single period in #47287 by @daverayment
-
Updated Grab And Move settings localization guidance so the Korean translation for “Activation modifier key” uses the feature activation meaning instead of product activation wording in #47352
-
Fixed the Quick Access flyout shortcut editor so clicking Reset no longer crashes PowerToys Settings and leaves the shortcut empty cleanly in #47407
-
Fixed PowerToys auto-update so it now actually relaunches after install with a 'successfully updated' toast, backs up all JSON configs before updating with restore on detected corruption, and defaults AutoDownloadUpdates to true for fresh installs in #46889
-
Renamed the OOBE overview "Learn" link label to "Documentation" so the call-to-action is clearer to first-time users in #48155
Shortcut Guide
-
Fixed Shortcut Guide key visuals to show readable key names instead of raw numeric key codes, while preserving arrow key glyph behavior in #48037 by @noraa-junker
-
Improved Shortcut Guide V2 reliability and accuracy by showing the configured shortcut, including additional PowerToys module shortcuts, matching app manifests correctly, and exiting cleanly from Esc or the close button in #48043 by @noraa-junker
-
Added Shortcut Guide V2, a redesigned shortcut reference with built-in manifests for Windows, PowerToys, and common apps, plus taskbar/context-aware navigation and updated Settings, OOBE, docs, and installer support in #40834 by @noraa-junker
-
Renamed the Settings UI module label from "Shortcut Guide V2" to "Shortcut Guide" now that V2 is the only shipping version in #48151
-
Fixed a Shortcut Guide V2 crash that occurred when the per-app Manifests directory was missing or unreadable, by treating the directory as empty in that case in #48171 by @MuyuanMS
-
Reworded the Shortcut Guide module and OOBE descriptions so they better explain what V2 does and how to invoke it in #48248
Workspaces
- Reworked the Workspaces editor with WPF Fluent theming (dropping ControlzEx and ModernWpf), refined fonts, spacing, and Mica background, and moved action buttons to the top with full-width scrolling in #46172 by @Jay-o-Way
ZoomIt
- Removed a stale Microsoft.Windows.ImplementationLibrary NuGet import from ZoomItBreak.vcxproj that was unused but broke the official build after the .NET 10 upgrade bumped the sibling project's WIL version in #47649
- Added webcam capture overlay and multi-clip append-with-transitions support to the ZoomIt recording/trim editor, exposed the new options in the ZoomIt Settings page, and fixed microphone/webcam selection-dialog bugs along the way in #47529 by @foxmsft and @markrussinovich
- Fixed ZoomIt's record-hotkey registration so when Alt is the only modifier the window-record hotkey (base XOR Alt) is no longer registered as a modifier-less key that had been hijacking every bare keypress in #47388
- Exposed ZoomIt's 16:9 aspect-ratio toggle for the screen-region recording hotkey (default Ctrl+Shift+5) in the PowerToys Settings UI in #47695 by @foxmsft
Development
- Build / dependency improvements:
- Updated PowerToys build and developer tooling to .NET 10, with Visual Studio 2026 now required for building from source in #41280 by @jerone and @snickler
- Fixed Shortcut Guide v2 release signing by adding the YamlDotNet dependency to the signed binaries list in #48050
- Updated shared PowerToys .NET runtime and library packages from 10.0.7 to 10.0.8 for the latest servicing fixes in #48010 by @snickler
- Improved PowerToys build tooling so build scripts discover Visual Studio 2026 Insiders/Preview installations with C++ tools and skip unusable installs in #47462
- Updated PowerToys WinUI platform dependencies, including Windows App SDK 2.0.1 and WebView2, for apps and the Command Palette extension template in #47470
- Updated shared PowerToys .NET runtime and library packages from 10.0.6 to 10.0.7 for the latest servicing fixes in #47517 by @snickler
- Fixed Quick Accent release signing by adding PowerAccent.Common.dll to the signed binaries list in #48058
- Fixed Advanced Paste release signing by adding the Google Gemini-related dependency DLLs to the signed binaries list in #48001
- Updated Advanced Paste AI dependencies, including Semantic Kernel and provider connectors, to newer package versions in #47819
- CI & automation:
- Added a Telemetry PR Check workflow that detects telemetry event changes in pull requests and posts contributor guidance in #47889
- Updated GitHub issue triage automation by renaming the area-labeling workflow and removing the legacy product auto-label workflow in #47911
- Added GitHub issue triage automation that applies Product/Area labels to new or reopened issues and supports manual backfill in #47808
- Fixed GitHub issue auto-labeling by correcting Product label names so the workflow applies existing repository labels in #48027
- Added a GitHub Action and tester for issue triage that applies Product labels from issue template areas, with AI fallback and manual modes in #47485
- Fixed GitHub issue auto-labeling so the workflow can authenticate with GitHub Models and apply area labels again in #47820
- Updated spell-check CI expectations by removing obsolete tokens, reducing noisy advisory comments on pull requests in #48110
- Updated CI to skip automatic builds for draft pull requests until they are ready for review in #47442
- Fixed the README roadmap reference for v0.100 so it renders as a clickable milestone link in #47785
- Updated README download guidance to point users to release assets and changes the release notes link to the releases page in #47432
- Updated the GitHub issue tracker duplicate-resolution reply to more clearly point users to the original tracking issue in #47981
- Setup / installer:
- Shrunk the PowerToys installer by removing genuinely-unused dependencies (System.Data.SqlClient, MFC/AMP/OpenMP VC++ runtime DLLs) and deduplicating WinAppSDK files between the install root and WinUI3Apps subfolder, reducing download size by roughly 11 MB in #47233
- Enterprise / GPO:
- Bumped the en-US ADML revision to 1.20 to match the ADMX file, fixing a Group Policy Editor load error that prevented administrators from loading the PowerToys policy templates in #47672
- Migrated spdlog from a git submodule to vcpkg manifest mode with an overlay port pinned to the same upstream commit (
gabime/spdlog@616866fc), replacing the polyfill shim and removing the in-treesrc/logging/wrapper in #48039 - Removed the last git submodule (
deps/expected-lite) since the code path that used it had already been switched tostd::expected, leaving PowerToys fully submodule-free in #48159 by @DHowett - Fixed a grammar typo in the PowerToy project-template README, changing "Settings Informations" to "Settings Information" in #48148 by @P-r-e-m-i-u-m
- Moved the Command Palette API spec back into
src/modules/cmdpal/doc/so the spec lives alongside the generated API code that consumes it in #48160
