How shlgd/superdictate works
SuperDictate is a native macOS push-to-talk dictation app. The user invokes a global shortcut, records speech, gets a local transcription, and inserts the result; configurable post-processing may optionally send the completed text to an OpenAI-compatible service. The README also documents model selection and downloads, audio-file transcription, history, settings, and user-initiated updates. The sampled sources show model/runtime management and the Python ASR protocol; UI, shortcut handling, insertion, and other app behavior are represented from README documentation, with their enclosing source path rather than an assumed implementation detail.
Main entry points: LocalSpeechModels.swift Model manager · main.swift Native app · local-asr.py Local ASR runtime · PackagedSpeechRuntime.swift Speech runtime installer
Components 22
Capture and transcription
- Native app
swift/Sources/Parakey/main.swift - Global shortcuts
swift/Sources/Parakey/main.swift - Microphone recording
swift/Sources/Parakey/main.swift - ASR process client
swift/Sources/Parakey/LocalSpeechModels.swift - Local ASR runtime
swift/Resources/local-asr.py - Text cleanup
swift/Sources/Parakey/main.swift - Text insertion
swift/Sources/Parakey/main.swift
Speech models
- Model manager
swift/Sources/Parakey/LocalSpeechModels.swift - Local model storage
swift/Sources/Parakey/LocalSpeechStorage.swift - Speech runtime installer
swift/Sources/Parakey/PackagedSpeechRuntime.swift - Managed Python runtime
swift/Sources/Parakey/ManagedSpeechRuntime.swift
App experience
- Transcription history
swift/Sources/Parakey/main.swift - Audio-file import
swift/Sources/Parakey/main.swift - Settings and panels
swift/Sources/Parakey/main.swift
Updates and diagnostics
- App updater
swift/Sources/Parakey/main.swift - Update signature validation
swift/Sources/Parakey/UpdateSigning.swift - Download diagnostics
swift/Sources/Parakey/DownloadDiagnostics.swift
Other components
- User
- macOS microphone
- OpenAI-compatible service
- Model download service
- GitHub releases
Connections 28
- User → Global shortcuts: invokes
- Global shortcuts → Native app: dispatches
- Native app → Microphone recording: starts recording
- macOS microphone → Microphone recording: provides audio
- Microphone recording → ASR process client: submits audio
- ASR process client → Local ASR runtime: launches and requests
- Local ASR runtime → Local model storage: reads weights
- ASR process client → Text cleanup: returns transcript
- Text cleanup → OpenAI-compatible service: sends text
- Text cleanup → Text insertion: passes text
- Text insertion → User: inserts text
- Native app → Transcription history: stores transcripts
- User → Audio-file import: selects audio
- Audio-file import → ASR process client: submits audio
- Audio-file import → Transcription history: saves transcripts
- User → Settings and panels: configures
- Settings and panels → Native app: applies preferences
- Native app → Model manager: manages models
- Model manager → Local model storage: reads and writes
- Model manager → Speech runtime installer: ensures runtime
- Model manager → Managed Python runtime: prepares fallback runtime
- Speech runtime installer → GitHub releases: downloads runtime
- Managed Python runtime → GitHub releases: downloads interpreter
- Local ASR runtime → Model download service: downloads model assets
- User → App updater: requests update
- App updater → GitHub releases: downloads release
- App updater → Update signature validation: validates candidate
- Model manager → Download diagnostics: records download events