Your voice stays private. Text appears at your cursor.
VaulType is a privacy-first, macOS-native speech-to-text application that lets you dictate text into any app where your cursor is active — without ever sending your voice to the cloud.
Unlike alternatives that rely on cloud services for full functionality, VaulType runs entirely offline using local AI models:
- whisper.cpp for speech recognition with Metal GPU acceleration
- llama.cpp for intelligent text post-processing with local LLMs
The app lives in your macOS menu bar and provides global hotkey-activated dictation with six purpose-built processing modes — from raw transcription to LLM-powered text structuring, grammar correction, and prompt formatting.
Vault = your voice stays locked on your device Type = text appears at your cursor
| Feature | Description |
|---|---|
| Zero-Network Architecture | All speech recognition and LLM processing happens locally. No cloud, no telemetry, no data leaves your Mac. |
| Dual Local AI Pipeline | whisper.cpp (STT) + llama.cpp (LLM) in one app — a unique combination no competitor offers. |
| Six Processing Modes | Raw, Clean, Structure, Prompt, Code, and Custom modes for every use case. |
| Universal Text Injection | Dictate into any macOS app — terminals, browsers, IDEs, Slack, and more. |
| Voice Commands | Launch apps, manage windows, and control your Mac with voice. |
| App-Aware Context | Auto-selects formatting mode based on the active application. |
| Editable Overlay | Review and edit transcribed text in a floating window before injection. |
| 90+ Languages | Multilingual support with automatic language detection using Whisper's multilingual models. English-only models available for faster performance. |
| Component | Technology |
|---|---|
| UI Framework | Swift 5.9+ / SwiftUI / AppKit |
| Speech Recognition | whisper.cpp (C/C++) with Metal acceleration |
| LLM Inference | llama.cpp (C/C++) with Metal acceleration |
| Audio Capture | AVAudioEngine |
| Text Injection | CGEvent API / Clipboard |
| Local Storage | SwiftData |
| Build System | Xcode 15+ / Swift Package Manager / CMake |
| CI/CD | GitHub Actions |
| Auto-Updates | Sparkle |
| Distribution | DMG / Homebrew Cask |
brew tap vaultype/vaultype
brew install --cask vaultype- Download the latest
.dmgfrom GitHub Releases - Open the DMG and drag VaulType to Applications
- Launch VaulType from Applications
- Grant Permissions — VaulType will request Accessibility and Microphone permissions
- Download a Model — Open Settings and download a Whisper model (recommended:
smallfor balanced speed/accuracy) - Set Your Hotkey — Default is double-tap Fn or hold Right Option
- Start Dictating — Press your hotkey, speak, and release. Text appears at your cursor.
💡 For detailed setup instructions, see the Quick Start Guide.
# Clone the repository
git clone https://github.com/vaultype/vaultype.git
cd vaultype
# Build whisper.cpp and llama.cpp
./scripts/build-deps.sh
# Open in Xcode
open VaulType.xcodeproj
# Build and run (⌘R)See the full Setup Guide for prerequisites and detailed instructions.
VaulType's dual AI pipeline gives you six modes for different use cases:
| Mode | What It Does | Best For |
|---|---|---|
| Raw | No LLM processing — inject speech exactly as recognized | Quick notes, real-time chat |
| Clean | Fix spelling, grammar, punctuation, capitalization | Emails, messages, documents |
| Structure | Format as bullet lists, numbered steps, or tables | Meeting notes, outlines |
| Prompt | Reformat speech into clear, well-structured AI prompts | Claude, ChatGPT, LLM tools |
| Code | Format as code comments, commit messages, docstrings | Development workflows |
| Custom | User-defined prompt templates | Anything you need |
VaulType/
├── VaulType/ # Main app target
│ ├── App/ # App entry point, menu bar
│ ├── Views/ # SwiftUI views (settings, overlay)
│ ├── Services/ # Core services
│ │ ├── AudioCaptureService # Microphone + AVAudioEngine
│ │ ├── WhisperService # whisper.cpp Swift wrapper
│ │ ├── LLMService # llama.cpp Swift wrapper
│ │ ├── TextInjectionService # CGEvent / clipboard injection
│ │ ├── CommandParser # Voice command parsing
│ │ └── HotkeyManager # Global hotkey registration
│ ├── Models/ # SwiftData models
│ ├── Utilities/ # Helpers, extensions
│ └── Resources/ # Assets, prompt templates
├── WhisperKit/ # whisper.cpp bridging module
├── LlamaKit/ # llama.cpp bridging module
├── VaulTypeTests/ # Unit tests
├── VaulTypeUITests/ # UI tests
├── scripts/ # Build scripts
└── docs/ # Documentation
| Feature | VaulType | MacWhisper | Superwhisper | Apple Dictation |
|---|---|---|---|---|
| Fully Offline | Yes | Partial | Partial | Partial |
| Local LLM Processing | Yes | No | Partial | No |
| Voice Commands | Yes | No | No | Limited |
| Processing Modes | 6 | 1 | 4+ | 1 |
| App-Aware Context | Yes | No | Yes | No |
| Open Source | Yes (GPL-3.0) | No | No | No |
| Price | Free | $80 | $8/mo | Free |
- Quick Start Guide — Up and running in 5 minutes
- Setup Guide — Full development environment setup
- Development Guide — Contributing and extending VaulType
- Architecture — System design and component breakdown
- Tech Stack — Technology choices and rationale
- Database Schema — SwiftData models and relationships
- Speech Recognition — whisper.cpp integration
- LLM Processing — llama.cpp and processing modes
- Text Injection — How text reaches your cursor
- Voice Commands — System control via voice
- Model Management — Downloading and managing AI models
- Permissions — macOS permissions guide
- Deployment Guide — Building and distributing releases
- CI/CD — GitHub Actions pipelines
- Monitoring & Logging — Diagnostics and debugging
- Troubleshooting — Common issues and solutions
- FAQ — Frequently asked questions
- Roadmap — Development phases and future plans
- Performance Optimization — Tuning for speed and efficiency
- API Documentation — Internal Swift APIs
We welcome contributions! See CONTRIBUTING.md for guidelines.
# Fork and clone
git clone https://github.com/YOUR_USERNAME/vaultype.git
# Create a feature branch
git checkout -b feature/your-feature
# Make changes and test
xcodebuild test -scheme VaulType
# Submit a pull requestVaulType is licensed under the GNU General Public License v3.0.
Third-party components:
- whisper.cpp — MIT License
- llama.cpp — MIT License
- Sparkle — MIT License
See Legal Compliance for full attribution and licensing details.
VaulType — Privacy-first dictation for macOS.
Your voice. Your Mac. No cloud required.


