OST is a menu bar app for macOS 26+ that transcribes system audio and shows on-device translation subtitles in a floating overlay. It is designed for videos and meetings, where disappearing, blinking, or duplicated text is a serious usability failure.
- Apple Speech and Apple Translation are the default on-device providers.
- Optional Qwen3 ASR and translation models run locally with MLX.
- Confirmed transcript and translation history stay visible while two separate lines are reserved for the current preview.
- Each transcript and translation area supports 2–10 confirmed lines; the window resizes when this value changes.
- Left alignment is the default, with center and right alignment available.
- Transcript, confirmed translation, and current translation preview have separate font/color controls and live examples.
- EPD is used as a soft translation boundary and does not force a new visible line for every pause.
- The app UI supports English, Chinese, Japanese, and Korean. English is the default.
- Optional per-session transcript and translation files are off by default and are saved only to a folder selected by the user.
Audio, transcripts, and translations are processed on the Mac. OST has no feature that uploads or sends audio, transcripts, translations, settings, or saved session files outside the computer.
Internet access is used only when the user chooses to download an MLX model. The sandboxed downloader receives model files; user content is never passed to it.
- macOS 26.0 or later
- Apple Silicon
Download OST-0.2.1-macos-arm64.zip from the v0.2.1 release, extract it, and move OST.app to Applications.
The current binary is ad-hoc signed because a Developer ID certificate was not available in the release environment. If macOS quarantine reports that the app cannot be verified or is damaged, remove the quarantine attribute after confirming that you downloaded it from this repository:
xattr -dr com.apple.quarantine /Applications/OST.appThe release ZIP SHA-256 is published by the release workflow and can be compared with:
shasum -a 256 OST-0.2.1-macos-arm64.zip- Launch OST and allow System Audio Capture when macOS asks.
- Select the OST captions icon in the menu bar.
- Choose the input and target languages, then choose Start.
- Use Settings > Overlay to unlock, move, resize, or change the number of confirmed lines.
Open Settings > Privacy, enable Save each session to text files, and choose a folder. One capture start-to-stop interval is one session. OST creates separate timestamped transcript and translation files. This option is off by default and never saves audio.
The project uses SwiftPM plus an Xcode app/XPC project.
swift package --disable-sandbox resolve
swift test --disable-sandbox --disable-automatic-resolution --jobs 4
script/test.sh
script/build_and_run.sh runSee docs/manual-qa.md for the release checklist.
