Rex¶
Rex is a native macOS menu-bar app (macOS 26+, Apple Silicon) that notices when a meeting starts, records mic and system audio as separate tracks, and turns them into a speaker-attributed transcript with local models - no account, no cloud, no upload. Every artifact is a plain file in a folder you own, and a rex CLI and workflow system share the app's engine, so anything Rex does you can script or automate.

Features¶
- Meeting detection - when Teams, Webex or Zoom (configurable) start using the microphone, a bar at the top of the screen asks Record / Ignore; watched apps and auto-record behaviour are per-app settings.
- Smart naming - recordings are titled from the meeting window, or from your Outlook calendar when that provider is enabled.
- Crash-safe capture - two raw mono AAC tracks in a fragmented
.m4a; a crash orkill -9mid-meeting still leaves a playable file, recovered on the next launch. Nothing that can crash (models, AEC) runs on the capture path while recording. - Echo cancellation - WebRTC AEC3 removes the far end from your microphone track after the recording, so your words and theirs stay separate.
- Local transcription - VAD → ASR per track → merge, with Parakeet (FluidAudio) or Whisper (WhisperKit) models downloaded once and run on-device.
- Speaker diarization - the system track is split into Speaker 1..N; you are always You, and speakers can be renamed per meeting or remembered globally.
- Per-word confidence - low-confidence spans are highlighted in the transcript view.
- Built-in player - replay either track with the transcript following along.
- Versioned artifacts - each meeting is a folder with audio,
meeting.json,transcript.json(public, versioned schemas) andtranscript.md. - Export & import - export md / txt / json / srt / vtt, per meeting or in bulk; import any audio file and run it through the same pipeline.
- Workflows - plain executables fired on
recording-started,recording-stopped,transcript-ready,error, or by hand - summarise with your own LLM CLI, copy to Obsidian, anything. - Automation - a
rex://URL scheme for Raycast and Shortcuts, plus a fullrexCLI (record, transcribe, export, doctor, reindex) built on the same engine as the app. - Search index - a local SQLite index over your meetings, rebuildable with
rex reindex. - Retention - optional automatic clean-up of old audio while transcripts are kept.
- Notifications - completion notifications with an optional sound.
- Stays out of the way - menu-bar only by default, launch at login, one
config.tomlshared by the app and the CLI.
Where things live¶
| Meetings | ~/Meetings/<yyyy-MM-dd HHmm Title>/ - see Artifacts |
| Config | ~/.config/rex/config.toml - see Configuration |
| Models | ~/Library/Application Support/Rex/Models/ |
| Index | ~/Library/Application Support/Rex/index.sqlite (rebuild with rex reindex) |
| Logs | ~/Library/Logs/Rex/rex.log |