PowerToys 0.103.3006.0 is a development preview from main, containing changes since v0.102.3001. This prerelease is intended for testing ahead of the next stable release.
Installer Hashes
| Description | Filename | sha256 hash |
|---|---|---|
| Per user - x64 | PowerToysUserSetup-0.103.3006.0-x64.exe | DFEB0CC4020DCF501206CE796DDEE4F03BA705A53829FB91269B4A604A7A19CB |
| Per user - ARM64 | PowerToysUserSetup-0.103.3006.0-arm64.exe | 20A2286FF3F1DEA00A3721D3D8E03756377BB357EB895E8DC005E6207E5537A0 |
| Machine wide - x64 | PowerToysSetup-0.103.3006.0-x64.exe | FC128E24423E62B7521F8575D52A565CECE450B16856DF5731A301531671DACF |
| Machine wide - ARM64 | PowerToysSetup-0.103.3006.0-arm64.exe | 6F1F20AC4D0404B4F72B9F8000B989479C31367B7AEAA0666741476744ABDC9B |
Highlights
- Workspaces: List and launch saved workspaces from the command line, with JSON output for automation.
- Command Palette: Browse extension pages in a dedicated dock flyout with navigation, search, details, and command controls.
- Command Palette: Customize the dock with Mica and Mica Alt materials.
- Command Palette: Keep Performance Monitor charts at the correct speed when viewing a metric in multiple places, with shorter GPU labels.
- Command Palette: Continue invoking commands after an extension stops running.
- Command Palette: Get more balanced app and command search results without unnecessary extension-name boosts.
- Command Palette: Keep an auto-hidden dock hidden when only its window stacking order changes.
- Mouse Without Borders: Improve reconnect completion, settings-save ordering, and computer-layout synchronization.
- General: Fix PowerToys remaining running after Quit by completing module shutdown before runtime teardown.
Command Palette
- Added a dedicated dock flyout for browsing extension pages, with its own navigation, search, details, and command controls in #51092.
- Fixed Performance Monitor history running at double speed when a metric appears in both the dock and a page, and shortened overly long GPU labels in #51206.
- Fixed command invocation becoming stuck after selecting an item from an extension that has stopped running, so other commands remain usable in #51443.
- Added Mica and Mica Alt dock materials with live switching and a saved selection independent of the main window in #51470 by @iamDeenko.
- Fixed auto-hidden docks being revealed when Command Palette only needed to update their position in the window stack in #51556 by @jiripolasek.
- Replaced the live host-log page with an Open logs folder command and wrote messages directly to log files instead of retaining the live list in memory in #51575 by @jiripolasek.
- Improved search ranking so matching extension names no longer give commands an unnecessary advantage over relevant apps in #51588.
- Added experimental Windows-key-only activation, disabled by default: set
CMDPAL_ENABLE_WIN_HOTKEY=1before launching Command Palette, then enable the Windows-key option in its settings in #51598.
General
- Corrected preview release comparisons across branches so equivalent cherry-picks and promotion merges are not reported as new or removed changes in #50132.
- Updated System.CommandLine to 2.0.12 while preserving existing command-line help, errors, and exit-code behavior in #51323.
- Updated the README release artwork and roadmap for the next PowerToys development cycle in #51396.
- Preserved the Light Switch unit-test project identity so opening the solution no longer rewrites its project file in #51402 by @jiripolasek.
- Clarified contributor guidance requiring human-written pull request descriptions, with AI-generated summaries confined to labeled, collapsed sections in #51457.
- Updated Command Palette code ownership and the core-team roster to reflect current maintainers in #51469.
- Standardized preview releases on three-component tags and branch-specific titles while retaining four-component installer versions in #51582.
- Advanced the main-branch development release train to 0.103, ahead of the stable release in #51603.
- Enabled official builds to populate the dependency feed when validating SDK and package upgrades in #51631.
- Fixed PowerToys hanging after Quit by completing module shutdown before runtime teardown, and restored the shared Universal C Runtime configuration in #51433.
Mouse Without Borders
- Improved pairing and reconnect completion, prevented older settings saves from overwriting newer snapshots, kept the computer layout synchronized, and added two-endpoint UI regression coverage in #51041.
Settings
- Improved persisted collection handling across Settings, including Mouse Without Borders and PowerDisplay, while preserving JSON formats and normalizing explicit null collections in #50738 by @matthudson.
Workspaces
- Added command-line listing and synchronous launching of saved workspaces by name or ID, with JSON output and per-application results for automation in #51114.
Development
- Improved Command Palette extension-object equality and hashing without making calls into extension processes in #51505 by @jiripolasek.
- Separated Command Palette fallback-command handling from regular top-level commands to simplify maintenance and future improvements in #51527.
- Updated Command Palette collection checks to satisfy the CA1860 analyzer without changing their behavior in #51619.
- Enabled warnings-as-errors across module UI-test projects and updated test templates to keep new suites consistent in #51283.
- Stabilized Keyboard Manager UI tests by waiting for Calculator's persistent window before checking keyboard focus in #51373.
- Expanded Shortcut Guide coverage for search, key-label conversion, models, activation, and settings in #49953 by @noraa-junker.
- Fixed Shortcut Guide packaging warnings by treating shortcut manifests as plain content rather than localized resource qualifiers in #51476.
- Added Window Hopper UI tests for cycling through an application's windows, overlay behavior, and configuration in #51552.
Differences from the previous preview
The comparison baseline is the published stable release v0.102.3001, not an earlier preview. This build switches to the main development lineage. Two baseline-only PR identities are not carried into that lineage:
- #50903, the 0.102 release merge, included stable-specific conflict resolutions. Publication review required: stable deliberately removed PowerDisplay's Copy monitor diagnostics feature, but this development preview contains it. This is a branch difference, not a newly added PR in the list above.
- #51326, a stable-only SDK-job pin to .NET 10.0.112, was subsequently reverted on stable. The SDK-job file is identical between this preview and the baseline; the missing PR identity does not represent an effective SDK configuration change.
Changes needing final review
There are no newly added commits without PR attribution. The branch comparison also retains these seven baseline-only commits without independent PR attribution for release-owner review; their absence should not be read as seven confirmed feature removals:
1ab685ee07a1: Merge 0.98.1 hotfixes into stable.da5448b1698e: fix merge mixup for hotfix 0.98.1.38dfc55a2dab: Merge branch 'main' into stable.0a510119c847: Remove duplicate PowerDisplay model classes after merge from main.d22589bcf6d5: Revert "Add copy monitor diagnostics button to Power Display".ef2d7537d507: Revert warning escalation on stable.4ce35264c2e4: Revert the SDK-job pin to .NET 10.0.112.