Vibecoded Windows-style per-app volume control for macOS — a native SwiftUI mixer in the menu bar.
Built on Core Audio Process Taps (requires macOS 14.2+, Apple Silicon). No kernel extension, no virtual audio driver, no external dependencies.
One-liner — downloads the latest prebuilt .app, installs to /Applications, launches it. No Xcode toolchain required:
curl -fsSL https://raw.githubusercontent.com/Fondson/vol-mixer/main/scripts/install.sh | bashDon't trust it? Don't run it. Every release is provenance-attested — verify the download before installing.
Requires the Swift toolchain (Xcode command line tools).
./scripts/build.sh
open "Volume Mixer.app"First build auto-provisions a persistent self-signed cert (scripts/setup-signing.sh) so the TCC Audio Capture grant survives rebuilds. On first launch, macOS prompts for Audio Capture as soon as you move a slider — grant it in System Settings → Privacy & Security → Audio Capture, then quit and relaunch.
The same binary ships a CLI for scripting:
"/Applications/Volume Mixer.app/Contents/MacOS/vol-mixer" list
"/Applications/Volume Mixer.app/Contents/MacOS/vol-mixer" run 6307 0.3listprints every process Core Audio tracks.run <pid> <gain>runs a foreground mixer; type a new gain + Enter to adjust live, Ctrl-C to release.
Running the CLI directly from ./build/release/vol-mixer won't pass TCC — always invoke the CLI through the bundled binary path above, which inherits the .app's identity and permission grant.
- Core Audio Process Taps are macOS 14.2+. Earlier versions need a different approach (kext / virtual driver / Background Music).
Volume Mixer runs entirely as your normal user account — no background service running as administrator, no privileged helper. See SECURITY.md for the trust model and how to verify a download.
MIT — see LICENSE.