Windows system utilities to maximize productivity
Go to file
2023-10-21 09:54:13 -04:00
.config [Build]Use XamlStyler to check XAML formatting (#28643) 2023-10-09 15:58:13 +01:00
.configurations [Dev]Winget Configuration File for PowerToys (#26259) 2023-05-29 15:30:01 +01:00
.github 🚧 [new module] Environment variables editor (#28722) 2023-10-20 16:28:07 +02:00
.pipelines Merge remote-tracking branch 'origin/main' into dev/snickler/net8-upgrade 2023-10-21 09:30:17 -04:00
deps Update cziplib to 0.25 (#21198) 2022-10-13 00:12:17 +03:00
doc 🚧 [new module] Environment variables editor (#28722) 2023-10-20 16:28:07 +02:00
installer 🚧 [new module] Environment variables editor (#28722) 2023-10-20 16:28:07 +02:00
src [EnvVar] Use ArgumentNullException.ThrowIfNull 2023-10-21 09:54:13 -04:00
tools 🚧 [new module] Environment variables editor (#28722) 2023-10-20 16:28:07 +02:00
.gitattributes Update .gitattributes 2022-07-19 13:06:16 -07:00
.gitignore Update monaco package (#26375) 2023-07-14 11:48:59 +02:00
.gitmodules Delete cxxopts (#21197) 2022-10-13 00:09:47 +03:00
.vsconfig [Dev]Add missing ATL lib to .vsconfig (#26953) 2023-06-20 14:45:46 +01:00
CODE_OF_CONDUCT.md adding in a Code of Conduct 2020-03-05 10:11:27 -08:00
COMMUNITY.md [Docs]Update core team in COMMUNITY.md (#27934) 2023-08-14 07:37:49 -07:00
CONTRIBUTING.md Add information about localisation in contributing.md (#23685) 2023-03-14 18:14:52 +01:00
Cpp.Build.props Merge remote-tracking branch 'origin/main' into dev/snickler/net8-upgrade 2023-10-19 12:06:46 -04:00
CppRuleSet.ruleset [Analyzers][CPP] Turn on warning 26493 (#23990) 2023-02-13 16:37:26 +00:00
Directory.Build.props [Chore]Bump Microsoft.CodeAnalysis.NetAnalyzers to 7.0.3 (#26865) 2023-06-19 20:07:14 +01:00
Directory.Packages.props Merge remote-tracking branch 'origin/main' into dev/snickler/net8-upgrade 2023-10-21 09:30:17 -04:00
LICENSE Fix license file (#2626) 2020-05-02 15:59:18 -07:00
NOTICE.md Merge remote-tracking branch 'origin/main' into dev/snickler/net8-upgrade 2023-10-21 09:30:17 -04:00
nuget.config [Build]Centralize .NET NuGet Package Versions (#23727) 2023-02-13 17:10:33 +00:00
PowerToys.sln 🚧 [new module] Environment variables editor (#28722) 2023-10-20 16:28:07 +02:00
README.md updating hashes and to 74.1 2023-10-03 12:06:39 -07:00
SECURITY.md Update SECURITY.md from 0.0.2 to 0.0.9 (#28289) 2023-09-06 09:14:28 -07:00
Settings.XamlStyler [Build]Use XamlStyler to check XAML formatting (#28643) 2023-10-09 15:58:13 +01:00
Solution.props [PowerRename] Fluent UX (#13678) 2021-10-25 14:40:19 +01:00
SUPPORT.md [Docs]Replace docs.micrososft.com with learn.microsoft.com (#20662) 2022-09-28 17:18:55 +01:00

Microsoft PowerToys

Hero image for Microsoft PowerToys

How to use PowerToys | Downloads & Release notes | Contributing to PowerToys | What's Happening | Roadmap

Build status

Architecture Solution (Main) Solution (Stable) Installer (Main)
x64 Build Status for Main Build Status for Stable Build Status Installer pipeline
ARM64 Build Status for Main Build Status for Main Build Status Installer pipeline

About

Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. For more info on PowerToys overviews and how to use the utilities, or any other tools and resources for Windows development environments, head over to learn.microsoft.com!

Current utilities:
Always on Top PowerToys Awake Color Picker
Crop And Lock FancyZones File Explorer Add-ons
File Locksmith Hosts File Editor Image Resizer
Keyboard Manager Mouse utilities Mouse Without Borders
Peek Paste as Plain Text PowerRename
PowerToys Run Quick Accent Registry Preview
Screen Ruler Shortcut Guide Text Extractor
Video Conference Mute

Installing and running Microsoft PowerToys

Requirements

  • Windows 11 or Windows 10 version 2004 (code name 20H1 / build number 19041) or newer.
  • Our installer will install the following items:

Go to the Microsoft PowerToys GitHub releases page and click on Assets at the bottom to show the files available in the release. Please use the appropriate PowerToys installer that matches your machine's architecture and install scope. For most, it is x64 and per-user.

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.74.1-x64.exe 748BF7BA33913237D36D6F48E3839D0C8035967305137A17DEFF39D775735C81
Per user - ARM64 PowerToysUserSetup-0.74.1-arm64.exe F5DAA89A9CF3A2805E121085AFD056A890F241A170FAB5007AA58E2755C88C54
Machine wide - x64 PowerToysSetup-0.74.1-x64.exe 298C6F4E4391BDC06E128BED86A303C3300A68EAF754B4630AF7542C78C0944A
Machine wide - ARM64 PowerToysSetup-0.74.1-arm64.exe A65F3C300A48F9F81312B7FC7B306382CB87F591612D0CEC7E5C0E47E868904B

This is our preferred method.

Via Microsoft Store

Install from the Microsoft Store's PowerToys page. You must be using the new Microsoft Store which is available for both Windows 11 and Windows 10.

Via WinGet

Download PowerToys from WinGet. Updating PowerToys via winget will respect current PowerToys installation scope. To install PowerToys, run the following command from the command line / PowerShell:

User scope installer [default]

winget install Microsoft.PowerToys -s winget

Machine-wide scope installer

winget install --scope machine Microsoft.PowerToys -s winget

Other install methods

There are community driven install methods such as Chocolatey and Scoop. If these are your preferred install solutions, you can find the install instructions there.

Third-Party Run Plugins

There is a collection of third-party plugins created by the community that aren't distributed with PowerToys.

Contributing

This project welcomes contributions of all types. Besides coding features / bug fixes, other ways to assist include spec writing, design, documentation, and finding bugs. We are excited to work with the power user community to build a set of tools for helping you get the most out of Windows.

We ask that before you start work on a feature that you would like to contribute, please read our Contributor's Guide. We would be happy to work with you to figure out the best approach, provide guidance and mentorship throughout feature development, and help avoid any wasted or duplicate effort.

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you grant us the rights to use your contribution and that you have permission to do so.

For guidance on developing for PowerToys, please read the developer docs for a detailed breakdown. This includes how to setup your computer to compile.

What's Happening

PowerToys Roadmap

Our prioritized roadmap of features and utilities that the core team is focusing on.

0.74 - September 2023 Update

In this release, we focused on stability and improvements.

Highlights

  • Upgraded to Windows App SDK 1.4.1, increasing stability of WinUI3 utilities. Thanks @dongle-the-gadget for starting the upgrade!
  • Text Extractor was upgraded to its version 2.0, with a new overlay, table mode and more Quality of Life improvements. Thanks @TheJoeFin!
  • Improved FancyZones stability, fixing some layout resets and improving handling of newly created windows on Windows 11.
  • Fixed many silent crashes that were reported to Watson and the user's event viewer.

General

  • Turning animations off in Windows Settings will now also turn them off in PowerToys.
  • Upgraded the Windows App SDK dependency to 1.4.1. Thanks @dongle-the-gadget for the original 1.4.0 upgrade!
  • Show in the thumbnail label and application titles when running as administrator. Thanks @davidegiacometti!
  • Upgraded the Win UI Community Toolkit dependency to 8.0. Thanks @niels9001!

Awake

  • Added down-sampled variants to the application's icon. Thanks @morriscurtis!

Color Picker

  • After adding a new color in the editor, the history will scroll the new color into view. Thanks @peerpalo!

Crop and Lock

  • Fixed a Crop and Lock crash that would occur when trying to reparent a window crashes the target application. An error message is shown instead.

FancyZones

  • Set the process and main thread priority to normal.
  • Fixed handling newly created windows on Windows 11.
  • Fixed scenarios where opening the FancyZones Editor would reset the layouts.

File Explorer add-ons

  • Optimized CPU usage for generating SVG thumbnails.
  • Improved handling of Gcode Thumbnails, including JPG and QOI formats. Thanks @pedrolamas!
  • Better handled errors when sending telemetry, which were causing reported crashes.
  • Fixed some thumbnails not being shown centered like before the optimization.

File Locksmith

  • Shows files opened by processes with PID greater than 65535. Thanks @poke30744!
  • Fixed a GDI object leak in the context menu which would crash Explorer.

Find My Mouse

Hosts File Editor

  • Ignore the default ACME sample entries in the hosts file. Thanks @davidegiacometti!
  • Improved save error handling and added better error messages. Thanks @davidegiacometti!
  • Corrected a check for an error when signaling the application to start as administrator.
  • Refactored the context menu. Thanks @davidegiacometti!
  • Fixed dialogs overlapping the title bar after the upgrade to Windows App SDK 1.4. Thanks @davidegiacometti!

Keyboard Manager

  • Distinguish between the regular minus key and the numpad minus key.

Mouse Without Borders

  • Fixed a crash when trying to restart the application.

Peek

  • Using Peek on HTML files will show a white background by default, similar to a browser's default behavior.
  • Fix a white flash on Dark theme when switching file and improved the development file preview detection and adjustments.

PowerRename

  • Fixed a crash caused by big counter values on the new enumeration method.

PowerToys Run

  • It's now possible to select which shell is used by the Shell plugin.
  • A combobox option type was added to the plugin options.
  • Fixed a bug in the Calculator plugin that was causing decimal numbers to be misinterpreted on locales where the dot (.) character isn't used as a decimal or digit separator.
  • Improved the Program plugin stability when it fails to load a program's thumbnail at startup.
  • The use of Pinyin for querying some plugins can now be turned on in Settings. Thanks @ChaseKnowlden!
  • Refactored option types for plugin and added number, string and composite types to be used in the future. Thanks @htcfreek!
  • Fixed the entry for searching for Windows updates in the Settings plugin. Thanks @htcfreek!

Quick Accent

  • The "All languages" character set is now calculated by programmatically querying the characters for every available language. Thanks @dannysummerlin!
  • Added é to the Norwegian and Swedish languages. Thanks @Aaron-Junker!
  • Added a runtime cache to the "All languages" character set, to only calculate accents once per key.

Registry Preview

  • Fixed focusing issues at startup.
  • Improved the data visualization to show data in a similar way to the Windows Registry Editor. Thanks @dillydylann!

Runner

  • Fixed hanging when a bug report was generated from the flyout. Thanks @davidegiacometti!

Settings

  • Improved the way the OOBE window reacts to Windows theme change.
  • Fixed an issue that made it impossible to change the "Switch between windows in the current zone" "Next window" shortcut for FancyZones.
  • Fixed a crash when entering a duplicate name for a color in the Color Picker page and improved clean up when cancelling a color edit. Thanks @davidegiacometti!

Text Extractor

  • Text Extractor 2.0, with a new overlay, table mode and more Quality of Life improvements. Thanks @TheJoeFin!

Documentation

Development

  • Fixed PowerToys Run DateTime plugin tests that were failing depending on locale, so that they can be run correctly on all dev machines.
  • Fixed PowerToys Run System plugin tests that were failing for certain network interfaces, so that they can be run correctly on all dev machines. Thanks @snickler!
  • Fixed a markdown bug on the GitHub /helped command.
  • Switched build pipelines to a new agent pool. Thanks @DHowett!
  • New .cs files created in Visual Studio get the header added automatically. Thanks @davidegiacometti!

What is being planned for version 0.75

For v0.75, we'll work on the items below:

  • Language selection

  • .NET 8 upgrade

  • Policy support for managing PowerToys Run plugins. Attention: A breaking change is planned (for 0.75), in which each plugin has to declare its identifier programmatically so that it can be controlled through GPO. For third-party plugin developers, please check https://github.com/microsoft/PowerToys/pull/27468 for more details.

  • New utility: Environment Variables Editor. Here's a Work in Progress preview:

Environment Variables Editor WIP

  • New Settings homepage. Here's a Work in Progress preview:

PowerToys Settings Dashboard WIP

  • Modernize and refresh the UX of PowerToys based on WPF. Here's Work in Progress previews for the modules "PowerToys Run" and "Color Picker":

PowerToys Run UI refresh WIP

ColorPicker UI refresh WIP

  • Stability / bug fixes

PowerToys Community

The PowerToys team is extremely grateful to have the support of an amazing active community. The work you do is incredibly important. PowerToys wouldnt be nearly what it is today without your help filing bugs, updating documentation, guiding the design, or writing features. We want to say thank you and take time to recognize your work. Month by month, you directly help make PowerToys a better piece of software.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct.

Privacy Statement

The application logs basic telemetry. Our Telemetry Data page (Coming Soon) has the trends from the telemetry. Please read the Microsoft privacy statement for more information.