Open your favorite project folders from PowerToys Command Palette — in one search.
Save directories you use every day, open them in whichever terminal you actually use, optionally run a command on open (dotnet run, npm run dev, and so on), and jump there without digging through File Explorer.
- Save shortcuts to folders you open often, with optional home keywords for fast root search
- Any terminal you use — Windows Terminal, Intelligent Terminal, every profile on your PC, plus WSL and classic shells
- Run a command on open — start dev servers, scripts, or anything else automatically
- Favorite shortcuts so they stay at the top of your list
- Create and edit shortcuts in Command Palette — no hand-editing JSON required
- Undo and redo shortcut edits from the list, settings row, or Ctrl+Z / Ctrl+Y
- Section headers in your shortcut list to group projects
- Import and export shortcuts as JSON from Quick Shell settings (backup, sharing, migration)
- Open elevated when you need admin — from the ⋯ menu or with Ctrl+Enter
- Search from the root palette — type a home keyword like
apiand matching shortcuts appear without opening the extension first
Quick Shell reads Windows Terminal and Intelligent Terminal settings.json files and lists every profile you have configured — including custom shells such as Alacritty, WezTerm, Git Bash, or Ubuntu. It also discovers WSL distros and classic shells on your PATH (PowerShell, pwsh, cmd).
Quick Shell settings splits terminal choice the same way Windows does:
| Setting | What it controls |
|---|---|
| Terminal application | Host executable (wt.exe or wtai.exe) for Default shortcuts and profile launches |
| Default profile | Profile used when a shortcut’s terminal is set to Default |
Per-shortcut profile choices stay on each shortcut in the editor. Host options include Let Windows choose and Windows Console Host for classic cmd / PowerShell launches.
Default terminal application and default profile are saved to %LOCALAPPDATA%\QuickShell\settings.json and survive reloads.
After you install a new terminal or edit profiles, use Refresh terminal list in Quick Shell settings or the ↻ button next to the terminal picker when creating or editing a shortcut.
- Windows 10 version 2004 (build 19041) or later — Windows 11 recommended
- PowerToys with Command Palette enabled
Get Quick Shell for CmdPal from the Microsoft Store (Store ID: 9PC8S6LNRT3R). In Command Palette, search Quick Shell.
winget install tonythethompson.QuickShellGet the latest x64 or ARM64 installer from GitHub Releases.
- Open PowerToys Command Palette (default: Win + Alt + Space)
- Run
Reload Command Palette Extension - Search
Quick Shell
You should see Quick Shell with the subtitle Open saved folders in any terminal you use.
Open Command Palette, search Quick Shell, and you’re in.
Search, favorite, edit, duplicate, undo, and run — all from the list and its context menu.
No JSON required. Pick a folder, optional command, profile, and whether to launch elevated.
Set your default terminal host and profile, export a backup, or import shortcuts from another PC. Merge keeps yours and adds new names; Replace all swaps the whole file.
Create shortcut is at the top of the list (Ctrl+N). Quick Shell settings is the row below it — or use ⋯ → Quick Shell settings on any shortcut.
Your shortcuts live at %LOCALAPPDATA%\QuickShell\shortcuts.json. The app creates this on first run; you can also manage everything from Command Palette.
Tip: If the extension does not appear, confirm Command Palette is on in PowerToys → Command Palette, then run Reload Command Palette Extension again.
Open the ⋯ menu on any shortcut (or press Ctrl+K) for edit, favorite, duplicate, undo, and elevated launch.
| What you want | How |
|---|---|
| Open a saved folder | Search Quick Shell, pick a shortcut, Enter |
| Jump straight to a shortcut | Type its home keyword at the Command Palette home screen (e.g. api) |
| Create a shortcut | Create shortcut at the top of the list (Ctrl+N), or ⋯ → Create shortcut |
| Favorite a shortcut | ⋯ → Favorite, or Ctrl+F |
| Reorder favorites | ⋯ → Move favorite up / down / to top / to bottom |
| Edit a shortcut | ⋯ → Edit, or Ctrl+E |
| Undo / redo | Select a row → Ctrl+Z / Ctrl+Y, or ⋯ → Undo / Redo |
| Open once as admin | ⋯ → Run as Admin, or Ctrl+Enter |
| Always open as admin | Enable Launch elevated in the editor, or "RunAsAdmin": true in JSON |
| Change default terminal or profile | Open Quick Shell settings (list row or ⋯ on any shortcut) |
| Refresh terminal list | Quick Shell settings → Refresh terminal list, or ↻ in the editor |
| Back up or move shortcuts | Quick Shell settings → Export / Import |
| Resolve import conflicts | Merge (keep yours, add new, rename duplicates) or Replace all (file only) |
| Reload after hand-editing JSON | Changes load automatically when Quick Shell reads the file |
Each shortcut supports these fields in shortcuts.json:
| Field | Required | Description |
|---|---|---|
Name |
Yes | Display name in Command Palette |
Directory |
Yes | Folder to open |
Abbreviation |
No | Home keyword — type at the Command Palette home screen to jump to this shortcut (e.g. api). JSON field name stays Abbreviation. |
Command |
No | Command to run after opening the folder |
Terminal |
No | Launch target: default, wt (profile — pair with WtProfile), it, powershell, pwsh, cmd, or wsl. The global terminal application setting chooses wt.exe vs wtai.exe for profile launches. |
RunAsAdmin |
No | true to always launch elevated (UAC prompt); also available as a checkbox when editing in Command Palette |
IsPinned |
No | true to favorite the shortcut (keeps it at the top of your Quick Shell list) |
Mix section headers into the same array with shortcut objects:
| Field | Required | Description |
|---|---|---|
Type |
Yes (for headers) | Set to "separator" for a titled section header |
Title |
No | Section label shown in the list (omit for a blank divider) |
Favorited shortcuts (IsPinned) always appear under a Favorites header at the top and are not repeated under layout sections.
Example:
[
{
"Name": "My API",
"Abbreviation": "api",
"Directory": "C:\\Projects\\MyApi",
"Command": "dotnet run",
"Terminal": "wt"
},
{
"Type": "separator",
"Title": "Web"
},
{
"Name": "Frontend",
"Directory": "C:\\Projects\\web",
"Command": "npm run dev",
"Terminal": "wt"
}
]More examples: shortcuts.example.json.
Extension missing after install
Run Reload Command Palette Extension in Command Palette. Restart PowerToys if needed.
Shortcuts disappeared after an update
Check %LOCALAPPDATA%\QuickShell\shortcuts.json.bak for a backup. Older installs may also have left a copy at %LOCALAPPDATA%\TerminalShortcutsCmdPal\shortcuts.json.
Duplicate or broken Quick Shell in Windows Settings
You may have an old installer alongside a newer one. In Settings → Apps, uninstall extra Quick Shell entries and keep a single install.
WinGet install works but Command Palette integration is incomplete
The WinGet installer registers the extension for discovery. For local development or the fullest MSIX integration, see Building from source below.
For contributors and local MSIX installs (recommended for development):
Prerequisites: Windows 11, .NET 10 SDK, Visual Studio 2022 (Windows workload), PowerToys with Command Palette enabled.
# Default dev loop: stop CmdPal → build/install MSIX → start CmdPal
.\scripts\deploy.ps1
# Same, with local PowerToys CmdPal SDK (sibling PowerToys checkout)
.\scripts\run-cmdpal-dev.ps1 -UseLocalSdk
# Skip UAC entirely (trusts cert in CurrentUser\TrustedPeople)
.\scripts\deploy.ps1 -SkipElevationAfter the first successful install, deploy.ps1 stays in your current terminal — it only elevates when the dev certificate is not trusted yet. Approve UAC once if prompted; later runs skip elevation automatically.
Then run Reload Command Palette Extension in Command Palette.
MIT — see LICENSE.
quickshell.trackdub.com — install steps, getting started, support, and privacy policy.
Open an issue on GitHub for bugs, ideas, or questions. Email: tonythethompson@hotmail.com.


