A Bitwarden extension for Windows PowerToys Command Palette. It interacts with your vault through the local Bitwarden CLI (bw).
📖 Changelog · 🏗️ Architecture · 📘 Dev Guide · 🔧 Troubleshooting
- Vault status detection (CLI installed/login state)
- Vault unlock, manual sync, and lock
- List/search items (by name, username, URL)
- Favorites filter + favorites pinned first
- Folder/type filters and Trash support
- Item types: Login, Card, Identity, Secure Note
- TOTP generation/copy with live countdown page
- Custom fields display/copy
- CRUD support:
- Create item (Login/Card/Identity/Secure Note)
- Create folder
- Edit existing item
- Delete to Trash / Restore / Permanently delete
- Password generator:
- Random password generator (length + charset options)
- Passphrase generator (word count/separator/capitalization/number options)
- Two-pane details panel with rich item details
- Multi-language UI support (including English and Simplified Chinese)
- Settings page in Command Palette:
- Custom Bitwarden CLI path
- API Key auth (
Client ID/Client Secret) - Custom environment variables (e.g. self-hosted server)
- Auto lock after inactivity
- Custom keyboard shortcut configuration
- Theme-aware icons (dark/light)
- Password health report
- Attachment support
- Windows 11 (or a Windows version that supports PowerToys Command Palette)
- PowerToys installed with Command Palette enabled
- Bitwarden CLI (
bw) installed and available inPATH# Install with winget winget install Bitwarden.CLI # Or install with npm npm install -g @bitwarden/cli
- Logged in to Bitwarden at least once
bw login
- Clone or download this repository.
- Open
BitwardenForCommandPalette.slnin Visual Studio 2022. - Select the target platform (
x64orARM64). - Right click the project and choose Deploy.
- Run
Reloadin Command Palette.
- Open PowerToys Command Palette (default:
Alt + Space). - Open Bitwarden For Command Palette.
- If the vault is locked, open the unlock page and enter your master password.
- Browse items, search by typing, and press
Enterto run primary actions.
In PowerToys Settings → Command Palette → Bitwarden For Command Palette:
- Bitwarden CLI Path: custom
bw.exepath (default usesbwfromPATH) - Bitwarden API Client ID: optional
- Bitwarden API Client Secret: optional
- Custom Environment Variables:
BW_SERVERfor self-hosted BitwardenNODE_EXTRA_CA_CERTSfor custom certificates- any other env var supported by Bitwarden CLI
- format:
KEY1=VALUE1;KEY2=VALUE2
To avoid signing in again after restarts:
- Go to Bitwarden Web Vault → Settings → Security → Keys.
- Create/view your API key.
- Copy
client_idandclient_secret. - Paste them into extension settings:
Bitwarden API Client IDBitwarden API Client Secret
- The extension maps them to
BW_CLIENTIDandBW_CLIENTSECRET.
Notes:
- If both API Key and
bw loginare present, API Key takes priority. - API Key authenticates login only; vault unlock still requires master password.
| Shortcut | Action |
|---|---|
Enter |
Primary action |
Ctrl+Enter |
Secondary action |
Ctrl+E |
Edit item |
Ctrl+Delete |
Move item to Trash |
Ctrl+R |
Sync vault |
Ctrl+L |
Lock vault |
Ctrl+Shift+A |
Create item |
| Shortcut | Action |
|---|---|
Enter / Ctrl+P |
Copy password |
Ctrl+U |
Copy username |
Ctrl+T |
Copy TOTP code |
Ctrl+O |
Open URL |
Ctrl+Shift+C |
Copy URL |
| Shortcut | Action |
|---|---|
Enter / Ctrl+Shift+N |
Copy card number |
Ctrl+V |
Copy CVV |
Ctrl+X |
Copy expiration |
Ctrl+N |
Copy cardholder name |
| Shortcut | Action |
|---|---|
Enter / Ctrl+N |
Copy full name |
Ctrl+M |
Copy email |
Ctrl+P |
Copy phone |
Ctrl+A |
Copy address |
Ctrl+U |
Copy username |
Ctrl+S |
Copy SSN |
| Shortcut | Action |
|---|---|
Ctrl+Shift+Delete |
Permanently delete |
Issues and PRs are welcome.
- Microsoft PowerToys - Command Palette extension framework
- Bitwarden - Open source password manager
- bitwarden-cli-bio - Bitwarden CLI with biometric unlock
License notice: This project references the third-party projects above. See THIRD-PARTY-NOTICES.md for details.
MIT License. See LICENSE.