PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. Inspired by the Windows 95 era PowerToys project, this reboot provides power users with utilities to squeeze more out of the Windows shell and customize it for their individual workflows.
What tools are included in PowerToys?
Microsoft keeps adding utilities to the suite, however the 21 main tools are: Always on Top, PowerToys Awake, Color Picker, 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, and Video Conference Mute.
What is the purpose of PowerToys?
PowerToys are smaller add-ons or utilities that can enhance and customize your Windows experience. Microsoft created PowerToys for power users looking for a bit more personalization and tweakability.
What are the two most useful tools in PowerToys?
PowerToys offers several handy tools for specific use cases, but two very popular ones are FancyZones, which lets you rearrange your window layout to run multiple apps on one screen, and PowerToys Run, which is a Spotlight-like launcher that includes quick search for apps and files in Windows.
Is Microsoft PowerToys free?
Yes, PowerToys is free and open-source.
Does PowerToys work on Windows 11?
PowerToys is compatible with Windows 10 and Windows 11
Getting started
To kick the tires on the first two utilities, download the installer here. The main PowerToys service runs when Windows starts and a user logs in. When the service is running, a PowerToys icon appears in the system tray. Selecting the icon launches the PowerToys settings UI. The settings UI lets you enable and disable individual utilities and provides settings for each utility. There is also a link to the help doc for each utility. You can right click the tray icon to quit the Power Toys service.
PowerToys settings UI.Note that some PowerToys functionality requires running in an elevated process. Elevation is required to interact with and manipulate windows from processes that have a higher set of rights than the current user. This is why the PowerToys.exe requests elevation when launched.
If you find bugs or have suggestions, please open an issue in the Power Toys GitHub repo. The backlog for creating new utilities is here. You can provide feedback on the backlog to suggest new ideas or a different priority order by joining the backlog discussion in this issue.
Current PowerToy utilities
The currently available utilities include:
Crop And Lock
Crop And Lock allows you to crop a current application into a smaller window or just create a thumbnail. Focus the target window and press the shortcut to start cropping.
Mouse Without Borders
Control a set of machines using the same keyboard/mouse, share clipboard between the machines and transfer files between the machines.
Peek
A system-wide utility for Windows that allows you to preview file content without the need to open multiple applications or interrupt your workflow. It offers a seamless and quick file preview experience for various file types, including images, web pages, Markdown files, text files, and developer files.
Always on Top
Always on Top enables you to pin windows on top of all other windows with a quick key shortcut (â Win+Ctrl+T).
PowerToys Awake
PowerToys Awake is designed to keep a computer awake without having to manage its power & sleep settings. This behavior can be helpful when running time-consuming tasks, ensuring that the computer does not go to sleep or turns off its screens.
Color Picker
ColorPicker is a system-wide color picking utility activated with Win+Shift+C. Pick colors from any currently running application, the picker automatically copies the color into your clipboard in a set format. Color Picker also contains an editor that shows a history of previously picked colors, allows you to fine-tune the selected color and to copy different string representations. This code is based on Martin Chrzan's Color Picker.
FancyZones
FancyZones is a window manager that makes it easy to create complex window layouts and quickly position windows into those layouts.
File Explorer add-ons
File Explorer add-ons enable preview pane rendering in File Explorer to display SVG icons (.svg), Markdown (.md) and PDF file previews. To enable the preview pane, select the "View" tab in File Explorer, then select "Preview Pane".
Image Resizer
Image Resizer is a Windows Shell extension for quickly resizing images. With a simple right click from File Explorer, resize one or many images instantly. This code is based on Brice Lambson's Image Resizer.
Keyboard Manager
Keyboard Manager allows you to customize the keyboard to be more productive by remapping keys and creating your own keyboard shortcuts. This PowerToy requires Windows 10 1903 (build 18362) or later.
Mouse utilities
Mouse utilities add functionality to enhance your mouse and cursor. With Find My Mouse, quickly locate your mouse's position with a spotlight that focuses on your cursor. This feature is based on source code developed by Raymond Chen.
PowerRename
PowerRename enables you to perform bulk renaming, searching and replacing file names. It includes advanced features, such as using regular expressions, targeting specific file types, previewing expected results, and the ability to undo changes. This code is based on Chris Davis's SmartRename.
PowerToys Run
PowerToys Run can help you search and launch your app instantly - just press the shortcut Alt+Space and start typing. It is open source and modular for additional plugins. Window Walker is now included as well. This PowerToy requires Windows 10 1903 (build 18362) or later.
Shortcut Guide
Windows key shortcut guide appears when a user presses â Win+Shift+/ (or as we like to think, â Win+?) and shows the available shortcuts for the current state of the desktop. You can also change this setting and press and hold â Win.
Video Conference Mute
Video Conference Mute is a quick way to globally "mute" both your microphone and camera using â Win+Shift+Q while on a conference call, regardless of the application that currently has focus. This requires Windows 10 1903 (build 18362) or later.
Languages
Currently, PowerToys is available in the following languages: Chinese (simplified), Chinese (traditional), Czech, Dutch, English, French, German, Hungarian, Italian, Japanese, Korean, Polish, Portuguese, Portuguese (Brazil), Russian, Spanish, Turkish.
Community led and developed in the open
Our goal for the PowerToys project is for it to be an extension of the Windows power user community and for it to provide the functionality these users find most valuable. Our backlog of utilities is on GitHub, and we encourage the community to provide feedback on the backlog in this issue. Each utility has its own feature backlog. You can also contribute to the Windows shortcut guide backlog and the FancyZones backlog. For new utility suggestions, please create a new issue to discuss the idea.
What's New
Highlights
- #35188 - Fixed an issue causing Workspaces to launch the wrong project through a shortcut.
- #35228 - Fixed a crash when opening the New+ templates folder through the Settings application.
Previous Release Notes:
Highlights
- New utility: New+ - allows setting a personalized set of templates to quickly create files and folders from a File Explorer context menu. Thanks @cgaarden!
- Language selection - it's now possible to select which UI language should be used by PowerToys utilities.
- Lots of quality fixes for Workspaces, improving the number of supported applications.
- Reduced Peek memory usage by fixing image leaks. Thanks @daverayment!
General
- Added a general setting to select which UI language should be used in PowerToys utilities.
- Fixed internal code of some policies for Group Policy Objects, that were reading registry entries using the wrong internal functions, and structured code better to avoid future mistakes of the same kind. Thanks @htcfreek!
Advanced Paste
- Fixed some telemetry calls to signal Advanced Paste activation on the cases where a direct shortcut is being used without showing the UI.
- User-defined custom actions can only be used with AI turned on, so custom actions were disabled on Settings when AI is disabled and were hidden from the Advanced Paste UI.
Awake
- Fixed tray icon behaviors, not appearing and showing incorrect time. Thanks @dend!
Environment Variables Editor
- Added the _NT_SYMBOL_PATH, _NT_ALT_SYMBOL_PATH and _NT_SYMCACHE_PATH as variables that are shown as lists. Thanks @chwarr!
FancyZones
- Allow snapping applications that were launched by Workspaces.
File Locksmith
- Fixed an issue causing File Locksmith to be triggered by unrelated verbs in the context menu.
Mouse Pointer Crosshairs
- Allow crosshairs radius to be 0 pixels. Thanks @octastylos-pseudodipteros!
New+
- New utility - Allows setting a personalized set of templates to quickly create files and folders from a File Explorer context menu. Thanks @cgaarden!
- Added missing entry for New+ policy state reporting in the Bug Report tool. Thanks @htcfreek!
- Added a policy for enabling/disabling whether filename extensions should be shown. Thanks @htcfreek!
Peek
- Properly show file's modified date instead of creation date in the file previewer. Thanks @daverayment!
- Fixed memory leak caused by unmanaged bitmap images not being freed. Thanks @daverayment!
- Fixed an issue causing Peek to not be displayed the first time when using a preview handler to display files. Thanks @davidegiacometti!
- Prevent tooltip in file previewer from overlapping with title bar controls. Thanks @daverayment!
- Fixed memory leaks in thumbnails and refactored image previewer. Thanks @daverayment!
PowerToys Run
- Improved the message boxes to be more specific when PowerToys Run failed to initialize itself or any plugin. Thanks @davidegiacometti!
- Use capital letters when showing degree results in the Unit Converter plugin. Thanks @PesBandi!
Quick Accent
- Add the Middle Eastern Romanization character set. Thanks @PesBandi!
- Add the degree sign, integral and vertical ellipsis when "All Languages" is selected. Thanks @rddunphy!
Settings
- Fixed the link to the Workspaces documentation. (This was a hotfix for 0.84)
- Fixed flyout issues after the Windows App SDK upgrade. Thanks @davidegiacometti!
- Fixed initialization for the New+ settings page. Thanks @htcfreek!
- Fixed enabled state of a control on the New+ settings page if the module is enabled by policy. Thanks @htcfreek!
- Fixed a crash when cancelling the template folder selection in the New+ settings page.
Workspaces
- Fixed detecting and snapping applications like Discord. (This was a hotfix for 0.84)
- Fixed detecting and snapping applications like Steam. (This was a hotfix for 0.84)
- Fixed button visibility in the UI. (This was a hotfix for 0.84)
- Fixed an issue launching the wrong project when the editor was closed without saving or cancelling a new project.
- Properly handle repositioning windows running as administrator.
- Properly handle cases where the monitor where a workspace was saved is no longer present.
- Fixed the workspace launcher restarting itself in a loop without success.
- Properly handle standalone applications.
- Fixed issues causing icons to not show.
Documentation
- Fixed the thirdPartyRunPlugins.md entry for the RDP plugin. Thanks @YisroelTech!
Development
- Upgraded Windows App SDK to 1.6.
- Upgraded the Target Platform Version to 10.0.22621.0.
- Added a bot trigger to automatically add a label to Workspaces issues. Thanks @plante-msft!
- Fixed a regular expression in the bot triggers for wanting to submit community contributions. Thanks @PesBandi!
- Fixed analyzer errors after the Visual Studio 17.12 update. Thanks @snickler!
- Fixed the TSA configuration for release CI builds.
- Refactored automated file component generation during installer builds.
- Rewrote the Azure Devops build system to be more modular and share more definitions between PR CI and Release CI.
- Fixed debugging of the New+ page of the Settings application when a settings file was not present.
- Fixed setting the version of the App Manifest in the File Locksmith and New+ context menu app packages.
- Fixed abstracted UI library nuget package signing on release CI.
- Removed build status from Github README.
Previous Release Notes:
Highlights
- New utility: PowerToys Workspaces - this utility can launch a set of applications to a custom layout and configuration on the desktop. App arrangements can be saved as a workspace and then relaunched with one click from the Workspaces Editor or from a desktop shortcut. In the editor, app configuration can be customized using CLI arguments and "launch as admin" modifiers, and app window sizes and positions can be updated as desired. This is our first public version of Workspaces and we are excited for you to try it out for yourself! Make sure to file issues you encounter on our GitHub so the team can continue to improve the utility.Known issues - the team is actively working on fixing these:
- Apps that launch as admin are unable to be repositioned to the desired layout.
- Border of "Remove" / "Add Back" app button in editor is not clearly visible on light themes.
- Added Awake --use-parent-pid CLI argument to attach to parent process. Thanks @dend!
- Added custom actions - user-specified pre-defined prompts for the AI model. Additionally, actions (both standard and custom) are now searchable from prompt box and Ctrl + number in-app shortcuts are now applicable for first 9 search results.
- Ported all C++/CX code to C++/WinRT as part of a refactor and upgrade series aimed at enabling AOT (Ahead of Time) compilation for enhanced performance and reduced disk footprint.
General
- Added DSC support for ImageResizer resize sizes property.
Advanced Paste
- Added custom actions - user-specified pre-defined prompts for the AI model. Additionally, actions (both standard and custom) are now searchable from prompt box and Ctrl + number in-app shortcuts are now applicable for first 9 search results.
Awake
- Added --use-parent-pid CLI argument to attach to parent process and fixed issue causing tray icon to disappear. Thanks @dend!
Hosts File Editor
- Fixed save failure when the hosts file is hidden. Thanks @davidegiacometti!
File Explorer add-ons
- Fixed multiple preview form positioning issues causing floating, detached windows, CoreWebView2 related exception and process leak. Thanks @davidegiacometti!
Keyboard Manager
- Convert RemapBufferRow to a struct with descriptive field names. Thanks @masaru-iritani!
- Fixed issue causing stuck Ctrl key when shortcuts contain AltGr key.
Peek
- Added long paths support. Thanks @davidegiacometti!
Quick Accent
- Moved number superscripts and subscripts from Portuguese to all languages definition. Thanks @octastylos-pseudodipteros!
PowerRename
- Updated the tooltip text of the replace box info button. Thanks @Agnibaan!
PowerToys Run
- Fixed window positioning on start-up introduced in 0.83.
- Improved default web browser detection. Thanks @davidegiacometti!
- Fixed volume ounces conversion to support both imperial and metric. Thanks @GhostVaibhav!
- Fixed thread-safety issue causing results not to be shown on first launch.
Screen Ruler
- Added multiple measurements support for all measuring tools.
Settings
- Improved disabled animations InfoBar in Find My Mouse page. Thanks @davidegiacometti!
Workspaces
- New utility: PowerToys Workspaces - this utility can launch a set of applications to a custom layout and configuration on the desktop. App arrangements can be saved as a workspace and then relaunched with one click from the Workspaces Editor or from a desktop shortcut. In the editor, app configuration can be customized using CLI arguments and "launch as admin" modifiers, and app window sizes and positions can be updated as desired. This is our first public version of Workspaces and we are excited for you to try it out for yourself! Make sure to file issues you encounter on our GitHub so the team can continue to improve the utility.
Documentation
- Added ChatGPTPowerToys plugin mention to thirdPartyRunPlugins.md. Thanks @ferraridavide!
Development
- Ported all C++/CX code to C++/WinRT.
- Moved Version.props import to Directory.Build.props.
- Extracted self-containment related .csproj properties to src/Common.SelfContained.props.
- Unused and obsolete dependencies cleanup. Thanks @davidegiacometti!
- Extracted CSWinRT related .csproj properties to src/Common.Dotnet.CsWinRT.props.
- Upgraded Microsoft.Windows.CsWinRT to 2.0.8 and updated verifyDepsJsonLibraryVersions.ps1 to unblock PRs.
- Explicitly Set NuGet Audit Mode to Direct in Directory.Build.props to revert changes made with VS 17.12 update. Thanks @snickler!
- Upgraded UnitsNet to 5.56.0.