Minutes now learns your voice. This release ships the first slice of first-class voice enrollment, rescues recordings that other tools would call dead, and adds two new ways to get meetings into and out of Minutes.
New
- Voice enrollment (CLI). Teach Minutes your voice in ~25 seconds, entirely on-device:
minutes voice enrollrecords a quality-gated sample (bad mic, background chatter, or a second speaker gets rejected instead of silently poisoning your profile), and speaker matching now returns evidence instead of a bare name — model-compatible profiles only, with margin checks so an uncertain match stays anonymous rather than guessing wrong.minutes voice status/list/test/remove/delete-allround out the surface, including a one-command sweep that removes every voiceprint, sample, sidecar, and database trace. Voiceprints are one-way identity vectors in a local0600SQLite file, never audio, never transmitted, created only by explicit action. Desktop enrollment UI is next; this release is CLI-first. (#496, #505, #506, #518) - Import existing text archives.
minutes import textbrings transcripts and notes from other tools into your searchable meeting history — one command to stop paying rent on your own conversation memory. (#516) - Cursor Agent summarization backend.
agent_command = "agent"points post-meeting summarization at the Cursor Agent CLI, alongside Claude, Codex, Gemini, OpenCode, and Pi. Read-only ask mode, no hardcoded model, andengine = "auto"preference order is unchanged for existing setups. Thanks @adriannoes for the spike and the PR. (#520, #522)
Fixed
- Recovery no longer refuses healthy audio. When a native call capture is interrupted, macOS can leave stem WAVs with unfinalized headers (a
datachunk claiming 0 bytes on a 400+ MB file). Recovery trusted the header, declared the audio "digitally silent," and refused to retry — while telling you to run ffmpeg yourself. The probe now measures the actual samples, repairs the header, and runs the mix itself: Retry as meeting just works. Thanks @rymalia for a diagnosis so complete it doubled as the spec. (#519) - Dictation without a model now recovers in one click. Starting dictation before the Whisper model is downloaded previously failed with a raw error; it now explains what's missing and offers the setup step directly. (#509)
- Vocabulary entries with non-ASCII names. Terms whose canonical form has no ASCII characters (e.g. CJK, Cyrillic) no longer collide on a shared bare-kind id, and
minutes vocabulary removenow accepts the canonical text as well as the id. (#511, #512) - Recall panel text is selectable. You can finally copy out of the Recall/chat panel on desktop. (#490, #503)
- Transient permission-probe failures no longer show a false warning banner. One slow probe tick at launch no longer flags Input Monitoring as broken. (#501, #504)
- Faster desktop first paint. The meetings list no longer waits on the proactive-context bundle before rendering. (#507)
Install
# Homebrew
brew install silverstein/tap/minutes
# Cargo
cargo install minutes-cli
# macOS app: download Minutes.dmg from the assets below
# MCP (Claude Desktop / Cowork): npx minutes-mcp, or install minutes.mcpbUpgrading? minutes voice enroll is the one to try first — then say a few words in your next meeting and watch the speaker labels get it right.