A cross-platform (Win & Mac) command palette launcher inspired by PowerToys Command Palette. Invoke with a global hotkey, fuzzy-search anything, extend via pluggable modules.
Shipped:
- Window Switcher — list and focus any open window. Rust napi-rs addon over Win32 on Windows, CoreGraphics/AX on macOS,
osascriptfallback. Uses the window's own icon (WM_GETICON / class) before falling back to the exe icon — correct for UWP/PWA/shared-exe apps. Double-press of the hotkey jumps straight to the previous window (Alt+Tab-style, works across windows of the same app); Ctrl/Cmd+D closes the highlighted window without leaving the list. - Groq Transcription — push-to-talk or toggle voice-to-text via Groq Whisper. Direct-launch hotkey captures mic audio, transcribes, and drops the result on the clipboard (optional auto-paste).
- Keyboard Remap — low-level, system-wide remap layer. CapsLock → Ctrl (tap = Escape), Space → modifier layer (tap = space). YAML rules file, cross-platform (Windows hook, macOS CGEventTap, Linux uinput). Covers the AutoHotkey / Karabiner-Elements basics.
- Auto Dark Mode — switch the Windows or macOS system appearance manually or on a two-time local schedule. Includes
Themes on ScheduleandToggle Themecommands. - Desktop Hint — shared, focusless status popup with native-inspired light and dark styling, used by Hotstrings, transcription, and Auto Dark Mode.
- User Commands — add named shell actions under Settings → Other and run them from Command Palette. Supports scripts, environment expansion, pipelines, and launching apps with arguments; includes removable platform-specific examples on first use.
- Settings UI — per-module toggles, config fields, hotkey rebinding.
- Hotkey system — per-module direct-launch hotkeys; each module's palette is reachable via its own configurable chord.
- Module registry — prefix routing, request cancellation, firewalled providers.
Open Settings → Other → User Commands, give the command a display name, and enter an action using your operating system's shell syntax. Saved entries appear in the existing Command Palette immediately.
# macOS
open -a "Visual Studio Code" --args --new-window
# Windows
"C:\Program Files\My App\app.exe" --profile work
# Linux
/path/to/script.sh --profile work
Actions run detached from the user's home folder through /bin/sh on macOS /
Linux or cmd.exe on Windows. Their output is not captured. They inherit
runwa's permissions, including elevation when Run as administrator is
enabled, so only save commands you trust.
Electron 41 · React 19 · TypeScript (strict) · Vite · Tailwind CSS v4 · Zustand · Fuse.js · Rust (napi-rs native addon)
npm install
npm run build:native # compile the Rust native addon
npm run devRequires a stable Rust toolchain for the native/ crate.
npm run dist:win # Windows installer
npm run dist:mac # macOS dmg
npm run dist:linux # Linux AppImage
