Command Palette
Command Palette Extension
Modern Meeter ships a PowerToys Command Palette extension so you can control VoiceMeeter without switching to the app window. The extension is included in the same MSIX package as the app — installing Modern Meeter makes it available in Command Palette automatically.
What it does
- List channels — Shows all VoiceMeeter input strips and output buses with their current gain and mute state
- Toggle mute — Selecting a channel mutes or unmutes it directly from the palette
- Connection aware — If VoiceMeeter isn’t running or installed, the extension surfaces a connect action or guidance instead of failing silently
- Live updates — The channel list refreshes as VoiceMeeter parameters change
Using it
- Install Modern Meeter (from the Store or via sideload)
- Open PowerToys Command Palette
- Type “Modern Meeter” and select it to open the mixer list
- Pick a strip or bus to toggle its mute state
How it works
Command Palette discovers extensions through the package manifest rather than a separate install step. Modern Meeter’s Package.appxmanifest declares:
- A
windows.appExtensionwithName="com.microsoft.commandpalette"— the identifier Command Palette scans for - A COM server (
windows.comServer) pointing atModernMeeter.exe -RegisterProcessAsComServer
When Command Palette activates the extension, it launches ModernMeeter.exe with the -RegisterProcessAsComServer argument. The custom Program.cs entry point detects this argument and starts an out-of-process COM server (via CmdPalServer.Run()) instead of the WinUI app.
The extension code lives in the ModernMeeter.CmdPal project:
ModernMeeterExtensionimplementsIExtensionand exposes the command providerModernMeeterCommandsProvidersupplies the top-level commands and owns the mixer pageMixerPage(aListPage) lists strips and busesToggleMuteCommandperforms the mute toggle
ModernMeeter.CmdPal references ModernMeeter.Core for the VoiceMeeter API, keeping the Command Palette SDK and COM server dependencies out of the main app project.