Type4Me macOS Voice Input
Skill by ara.so — Daily 2026 Skills collection.
Type4Me is a macOS voice input tool that captures audio via global hotkey, transcribes it using local (SherpaOnnx/Paraformer/Zipformer) or cloud (Volcengine/Deepgram) ASR engines, optionally post-processes text via LLM, and injects the result into any app. All credentials and history are stored locally — no telemetry, no cloud sync.
Architecture Overview
Installation
Prerequisites
Build & Deploy from Source
Download Pre-built App
Download Type4Me-v1.2.3.dmg from releases (cloud ASR only, no local engine):
If macOS blocks the app:
Download Local ASR Models
Expected structure for Paraformer model:
Key Protocols
SpeechRecognizer Protocol
Every ASR client must implement this protocol:
ASRProviderConfig Protocol
Each vendor's credential definition:
Adding a New ASR Provider
Step 1: Create Provider Config
Create Type4Me/ASR/Providers/OpenAIWhisperProvider.swift:
Step 2: Implement the ASR Client
Create Type4Me/ASR/OpenAIWhisperASRClient.swift:
Step 3: Register the Provider
In Type4Me/ASR/ASRProviderRegistry.swift, add to the all array:
Credentials Storage
Credentials are stored at ~/Library/Application Support/Type4Me/credentials.json with permissions 0600. Never hardcode secrets — always load via CredentialStore:
Custom Processing Modes with Prompt Variables
Processing modes use LLM post-processing with three context variables:
Example custom mode prompts:
Built-in Processing Modes
Session State Machine
The core recording flow in Session/:
Updating After Source Changes
Troubleshooting
App won't open (security warning)
Local model not recognized in Settings
Verify the directory structure exactly matches:
SherpaOnnx build fails
New ASR provider not appearing in Settings
- Confirm the provider type is added to
ASRProviderRegistry.all - Ensure
providerIDis unique across all providers - Clean build:
swift package clean && bash scripts/deploy.sh
Audio not captured / no floating bar
- Grant microphone permission: System Settings → Privacy & Security → Microphone → Type4Me ✓
- Grant Accessibility permission for text injection: System Settings → Privacy & Security → Accessibility → Type4Me ✓
Credentials not saving
Export history to CSV
Open Settings → History → select date range → Export CSV. The SQLite database is at:
System Requirements
- macOS 14.0 (Sonoma) or later
- Apple Silicon (M1/M2/M3/M4) recommended for local ASR inference
- Xcode Command Line Tools + CMake for source builds
- Internet connection only needed for cloud ASR providers


