Docs/Editor/Voice dictation

Voice dictation

Would rather talk than type? Speak into the note you're editing and Minerva writes down what you said, dropping the text right where your cursor is. Everything happens on your own computer — your voice never leaves it.

Private by default

Dictation runs entirely on your machine. Your recorded voice is used to produce the text and is never sent anywhere. The very first time you dictate, Minerva downloads a small speech model; after that it works even offline.

Starting and stopping

Dictation is a simple on/off toggle: trigger it once to start listening, and again to stop and drop the text into your note. You can start it three ways:

Keyboard — ⌘⇧V
Starts listening at your cursor. Press it again to stop and insert what you said, right where you left off.
Right-click menu
Right-click in the editor and choose Dictate…
Command palette
Search for Dictate (Voice to Text).

While you're speaking, a small pill at the bottom of the window shows Listening… with Insert and Cancel buttons. Press Esc to cancel without inserting anything. When you stop, the pill briefly shows that it's writing out your words; the finished text appears at your cursor, with a space added automatically so it doesn't run into the word before it.

Speed vs. accuracy

In Settings you can choose how carefully Minerva listens. A lighter option is fastest but a little rougher; a heavier one is more accurate but takes longer. The middle option is a good default for most people.

Recording audio

Dictation keeps only the words. To keep the audio itself — a meeting, a voice memo, an idea you talked through — make a recording instead. It's saved as a file in your thoughtbase and embedded in your note as a player, and nothing is transcribed unless you ask.

Start and stop
Click the record button beside the dictation mic in the status bar, choose File → New Audio Recording, search the command palette for New Audio Recording, or right-click in the editor and choose Record Audio…. While recording, the status-bar button becomes a stop square with the elapsed time, and a pill at the bottom of the window shows the time with Stop and Cancel; Esc cancels without saving.
Meetings
To record a call, run New Meeting Recording (Mic + System Audio) from the command palette. It records your microphone and the sound your Mac is playing, mixed into one file, so both sides of the call are kept. The first time, macOS asks to let Minerva record system audio. This needs macOS 14.2 or later. Wear headphones if you can, so your mic doesn't pick up the call a second time. If the recording ends and no system audio came through, Minerva says so and points you at the setting to check.
Where it goes
The audio is saved under assets/recordings/, named for the date and time you started. It's embedded at your cursor in the note you were in. If no note was open, Minerva makes a new note for it.
Transcribe
Right-click the line with the recording and choose Transcribe Recording, or put your cursor on it and run Transcribe Audio Recording from the command palette. The transcript appears beneath the recording in a collapsed Transcript box — click it to open — as ordinary text you can edit and search. Long recordings are worked through a couple of minutes at a time, and the pill shows how far along it is.
Summarize
Once a recording has a transcript, right-click its line and choose Summarize Recording… (or run Summarize Audio Recording from the command palette). The assistant drafts a short summary — what it was about, decisions, action items — and proposes it as a Summary box between the recording and its transcript. You review it as a diff, and nothing changes until you approve.

Transcription uses the same on-device speech model as dictation, so your recordings never leave your computer.

Recordings are part of your knowledge graph too: each one knows which notes embed it, when it was recorded, how long it is, and whether it has a transcript. A query cell like this lists the ones still waiting to be transcribed:

:::query-table
title: Recordings without a transcript
---
SELECT ?recording ?recordedAt ?note WHERE {
  ?n minerva:embeds ?r ; minerva:relativePath ?note .
  ?r a minerva:AudioRecording ; minerva:relativePath ?recording .
  OPTIONAL { ?r minerva:recordedAt ?recordedAt }
  FILTER NOT EXISTS { ?r minerva:hasTranscript true }
}
ORDER BY DESC(?recordedAt)
:::
A note being written by voice: the cursor sits in the text, and a floating pill at the bottom of the window shows a pulsing "Listening…" indicator with Insert and Cancel buttons.
Dictating into a note