/PowerToys

Windows system utilities to maximize productivity

Primary LanguageC#MIT LicenseMIT

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:
Advanced Paste Always on Top PowerToys Awake
Command Not Found Color Picker Crop And Lock
Environment Variables 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.
  • x64 or ARM64 processor
  • Our installer will install the following items:

Via GitHub with EXE [Recommended]

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.82.0-x64.exe 295E2A4622C7E347D3E1BAEA6B36BECC328B566496678F1F87DE3F8A12A7F89A
Per user - ARM64 PowerToysUserSetup-0.82.0-arm64.exe 55D25D068C6148F0A15C7806B9F813224ABA9C461943F42BB2A8B0E22D28240C
Machine wide - x64 PowerToysSetup-0.82.0-x64.exe 01B59C00BB43C25BEFEF274755875717AB4DEAB57C0354AB96CF5B1DA4837C9A
Machine wide - ARM64 PowerToysSetup-0.82.0-arm64.exe 1F642B50962516127793C4D3556BF4FC24B9738BAC2F362CAA3BFF8B0C3AF97F

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.82 - June 2024 Update

In this release, we focused on stability and improvements.

Highlights

  • New feature added to PowerRename to allow using sequences of random characters and UUIDs when renaming files. Thanks @jhirvioja!
  • Improvements in the Paste As JSON feature to better handle other CSV delimiters and converting from ini files. Thanks @htcfreek!
  • Fixed UI issues that were reported after upgrading to WPF UI on Color Picker and PowerToys Run.
  • Bug fixes and stability.

Advanced Paste

  • Fixed an issue causing external applications triggering Advanced Paste. (This was a hotfix for 0.81)
  • Added a GPO rule to disallow using online models in Advanced Paste. (This was a hotfix for 0.81)
  • Improved CSV delimiter handling and plain text parsing for the Paste as JSON feature. Thanks @htcfreek!
  • Added support to convert from ini in the Paste as JSON feature. Thanks @htcfreek!
  • Fixed a memory leak caused by images not being properly cleaned out from clipboard history.
  • Added an option to hide the UI when it loses focus. Thanks @davidegiacometti!
  • Improved telemetry to get better data about token usage and if clipboard history is a popular feature. Thanks @craigloewen-msft!

Color Picker

  • Fixed the opaque background corners in the picker that were introduced after the upgrade to WPFUI.

Developer Files Preview (Monaco)

  • Improved the syntax highlight for .gitignore files. Thanks @PesBandi!
  • Checking for the sticky scroll option in code behind was being done twice. Removed one of the checks. Thanks @downarowiczd!

Environment Variables Editor

  • Added clarity to the UI section tooltips. Thanks @anson-poon!

File Explorer add-ons

  • Fixed a crash when the preview handlers received a 64-bit handle from the OS. Thanks @z4pf1sh!
  • Fixed a crash when trying to update window bounds and File Explorer already disposed the preview.

Find My Mouse

  • Added the option to have to use the Windows + Control keys to activate. Thanks @Gentoli!

Hosts File Editor

  • Improved spacing definitions in the UI so that hosts name are not hidden when resizing and icons are well aligned. Thanks @htcfreek!
  • Changed the additional lines dialog to show the horizontal scrollbar instead of wrapping contents. Thanks @htcfreek!
  • Improved the duplication check's logic to improve performance and take into account features that were introduced after it. Thanks @davidegiacometti!

Installer

  • Fixed the remaining install failures when the folders the DSC module is to be installed in isn't accessible by the WiX installer for user scope installations.
  • Fixed an issue causing ARM 64 uninstall process to not correctly finding powershell 7 to run uninstall scripts.

Peek

  • Prevent activating Peek when the user is renaming a file. Thanks @davidegiacometti!
  • Added support to preview special folders like Recycle Bin and My PC instead of throwing an error.
  • Fixed a crash caused by double releasing a COM object from the module interface.

Power Rename

  • Improved apostrophe character handling for the Capitalize and Titlecase renaming flags. Thanks @anthonymonforte!
  • Added a feature to allow using sequences of random characters or UUIDs when renaming files. Thanks @jhirvioja!

PowerToys Run

  • Improved the plugin descriptions for consistency in the UI. Thanks @HydroH!
  • Fixed UI scaling for different dpi scenarios.
  • Fixed crash on a racing condition when updating UWP icon paths in the Program plugin. Thanks @davidegiacometti!
  • Fixed PowerToys Run hanging when trying to close an unresponsive window in the WindowWalker plugin. Thanks @GhostVaibhav!
  • Fixed the example in the UnitConverter description to reduce confusion with the inches abbreviation (now uses "to" instead of "in"). Thanks @acekirkpatrick!
  • Brought the acrylic background back and applied a proper fix to the titlebar accent showing through transparency.
  • Fixed an issue causing the transparency from the UI disappearing after some time.

Quick Accent

  • Added support for the Crimean Tatar character set. Thanks @cor-bee!
  • Added the Numero symbol and double acute accent character. Thanks @PesBandi!
  • Added the International Phonetic Alphabet characters. Thanks @PesBandi!
  • Fixed the character description center positioning. Thanks @PesBandi!
  • Added feminine and masculine ordinal indicator characters to the Portuguese character set. Thanks @octastylos-pseudodipteros!

Screen Ruler

  • Updated the default activation hotkey to Win+Control+Shift+M, in order to not conflict with the Windows shortcut that restores minimized windows (Win+Shift+M). Thanks @nx-frost!

Settings

  • Disabled the UI to enable/disable clipboard history in the Advanced Paste settings page when clipboard history is disabled by GPO in the system. (This was a hotfix for 0.81)
  • Updated Advanced Paste's Settings and OOBE page to clarify that the AI use is optional and opt-in. (This was a hotfix for 0.81)
  • Corrected a spelling fix in Advanced Paste's settings page. Thanks @htcfreek!
  • Added localization support for the "Configure OpenAI Key" button in Advanced Paste's settings page. Thanks @zetaloop!
  • Fixed extra GPO warnings being shown in Advanced Paste's settings page even if the module is disabled. Thanks @htcfreek!
  • Fixed a crash when a PowerToys Run plugin icon path is badly formed.
  • Disabled the experimentation paths in code behind to improve performance, since there's no current experimentation going on.

Documentation

  • Adjusted the readme and release notes to clarify use of AI on Advanced Paste. (This was a hotfix for 0.81)
  • Added the Edge Workspaces plugin to PowerToys Run thirdPartyRunPlugins.md docs. Thanks @quachpas!
  • Removed the deprecated Guid plugin from PowerToys Run thirdPartyRunPlugins.md docs. Thanks @abduljawada!
  • Added the PowerHexInspector plugin to PowerToys Run thirdPartyRunPlugins.md docs. Thanks @NaroZeol!
  • Fixed a broken link in the communication-with-modules.md file. Thanks @PesBandi!
  • Updated COMMUNITY.md with missing and former members.

Development

  • Fixed ci UI tests to point to the correct Visual Studio vstest location after a Visual Studio upgrade. (This was a hotfix for 0.81)
  • Updated System.Drawing.Common to 8.0.6 to fix CI builds after the .NET 8.0.6 upgrade was released.
  • Removed an incorrect file reference to long removed documentation from the solution file. Thanks @Kissaki!
  • Upgraded Windows App SDK to 1.5.3.
  • Removed use of the BinaryFormatter API from Mouse Without Borders, which is expected to be deprecated in .NET 9.
  • The user scope installer is now sent to the Microsoft store instead of the machine scope installer.
  • Refactored Mouse Jump's internal code to allow for a future introduction of customizable appearance features. Thanks @mikeclayton!
  • Removed a noisy error from spell check ci runs.
  • Improved the ci agent pool selection code.
  • Updated Xamlstyler.console to 3.2404.2. Thanks @Jvr2022!
  • Updated UnitsNet to 5.50.0 Thanks @Jvr2022!
  • Replaced LPINPUT with std::vector of INPUT instances in Keyboard Manager internal code. Thanks @masaru-iritani!
  • Improved the Microsoft Store submission ci action to use the proper cli and authentication.

What is being planned for version 0.83

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

  • Stability / bug fixes
  • New utility: Dev Projects
  • Language selection
  • New module: File Actions Menu

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 wouldn’t 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.