Skip to content

Installation

Voice Mirror is in alpha and under active development.

Voice Mirror is Windows-first today: the see-and-drive App Preview, push-to-talk, and native-app driving currently run on Windows. macOS and Linux support is planned but not available yet.

Download the latest installer from the releases page and run it. Installed builds auto-update to new stable releases.

The alpha installer is unsigned, so Windows SmartScreen will warn you on first run. Click More info → Run anyway. Code signing is planned.

ChannelWhat you getWhere
StableTagged releases with release notes; auto-updatesLatest release
NightlyThe dogfood channel — newest features, rougher edgesNightly build

Nightly is what we run ourselves day to day. If something breaks on nightly, tell us in the Discord — that’s the point of the channel.

The project lives under the GitHub org contextmirror. The commands below assume the repo at github.com/contextmirror/voice-mirror — if the exact repo name differs, check the org page for the current one.

No Python required. The entire voice pipeline (STT, TTS, VAD) runs natively in Rust.

Terminal window
git clone https://github.com/contextmirror/voice-mirror
cd voice-mirror
npm install
npm run dev

The repo has a root-level src/ (Svelte 5 frontend) and src-tauri/ (Rust backend). npm run dev rebuilds the voice-mirror-mcp Rust binary, starts the Vite dev server, and launches the Tauri app with hot reload.

Terminal window
npm run build

This produces a platform-specific bundle in src-tauri/target/release/bundle/. Unlike the shipped installer, local builds aren’t code-signed and don’t auto-update.

Voice features are built into the Rust backend — no separate installation is required.

ComponentDefaultNotes
STTWhisper (local, whisper.cpp)Model base; tiny / base / small downloadable
TTSKokoro (local ONNX)Runs locally
TTS (fallback)Edge TTSFree Microsoft cloud voices; used if the local model isn’t present
VADSileroVoice activity detection (ONNX)

Voice Mirror connects to AI in three ways. You can switch providers without restarting, and API keys are auto-detected from your environment.

Terminal-based agents that run inside Voice Mirror’s integrated terminal:

  • Claude Code — Anthropic’s CLI agent
  • OpenCode
  • Codex
  • Gemini CLI
  • Kimi CLI

Local model servers, auto-detected with no API key required:

  • Ollama
  • LM Studio
  • Jan

Direct HTTP connections to cloud providers. Keys are picked up automatically from environment variables:

VariableProvider
ANTHROPIC_API_KEYAnthropic
OPENAI_API_KEYOpenAI
GOOGLE_API_KEYGemini
XAI_API_KEYGrok (xAI)
GROQ_API_KEYGroq
MISTRAL_API_KEYMistral
OPENROUTER_API_KEYOpenRouter
DEEPSEEK_API_KEYDeepSeek

Voice Mirror stores its configuration in the platform app data directory:

  • Windows: %APPDATA%\voice-mirror\
  • macOS: ~/Library/Application Support/voice-mirror/
  • Linux: ~/.config/voice-mirror/

All settings are accessible through the in-app Settings panel. Configuration is persisted via Tauri’s Rust backend with atomic writes.

  1. The floating orb appears on your desktop
  2. Say “Hey Claude” — the orb pulses red when recording
  3. Wait for the response — the orb pulses blue when speaking
  4. Press Ctrl+Shift+V to expand the full workspace (editor, terminal, and App Preview)