Ultra fast
200 mskey-up to paste
That is a six-second sentence on an M3 Max. The engine warms the moment the key goes down, so by the time you let go most of the work is done. It runs on the CPU. Nothing is uploaded.
Dictation and takes for the Mac
see.computer is the fastest way to show your agent what it needs. Speak, and the words land at your cursor. Add Shift, and your screen goes with them. Free and open source under MIT. Fully local. No account.
> "The sidebar overlaps the table once the window is narrower than about 900 pixels. The shot is at 1200, the clip is me dragging it down." shots/001.png, clips/001 (14 frames) ~/Documents/see.computer/2026-09-07T14-02-11/take.md
2026-09-07T14-02-11/ ├── take.md ├── transcript.json ├── shots/ │ └── 001.png └── clips/ └── 001/ ├── clip.mov └── frames/ 14 jpg
200 mskey-up to paste
That is a six-second sentence on an M3 Max. The engine warms the moment the key goes down, so by the time you let go most of the work is done. It runs on the CPU. Nothing is uploaded.
Hold Globe+Shift, talk over what is on screen, let go. The screen and your voice become a folder with take.md, the transcript with word timings, screenshots, and every clip already split into JPEG frames. The agent opens the exact frame where you said "this one" without decoding a video.
The paste carries the words too, so a web chat box with no file access still gets them.
um, uh and hm are dropped and the next word takes the capital. Spoken numbers come out as figures. twenty-five thousand becomes 25,000, five percent becomes 5 %.
Words the model has never heard go in vocabulary.md and are pushed into the decoder while it is still choosing.
Gestures
The default trigger is Fn (Globe), the same key Apple and Wispr Flow use for dictation. Nothing to open, no window to find.
The text is pasted at your cursor, in any app that has one. A terminal, a chat box, a commit message.
A locked take, for narration that runs longer than you want to hold a key. Tap once to finish and paste. Esc throws it away. A lit ring around the pill while it is locked.
Inside a locked take, hold Globe again and add Shift for shots or clips.
The screen and the microphone are recorded while you hold. On release they are packaged into a take folder and the paste lands at your cursor.
Release before about 0.6 seconds and the take is discarded, so a slipped key leaves nothing behind.
Other keys. Left Option and Right Option are available as the trigger in the tray. Locking and recording follow whichever key you pick.
If Globe starts Apple's Dictation. macOS may have the Globe key set to start its own Dictation. Set it to Do Nothing under System Settings > Keyboard.
Takes
Agents read files. They do not decode QuickTime. So a take is laid out for a reader with a file tool and nothing else. Hold Globe+Shift, talk through what is on screen, let go. The recording is written under a timestamp in ~/Documents/see.computer/, and a short paste lands at your cursor.
The paste is the narration in quotes, a blank line, then the names of the captures and the path to take.md. A coding agent with file access follows the path and opens the frame that was on screen when you said "this one". A web chat box that cannot open your disk still gets the words in quotes. Both get the same paste.
What lands on disk
~/Documents/see.computer/2026-09-07T14-02-11/ ├── take.md start here ├── transcript.json word timings ├── shots/ PNG screenshots │ └── 001.png └── clips/ └── 001/ ├── clip.mov └── frames/ JPEG frames
What gets pasted
"The sidebar overlaps the table once the window is narrower than about 900 pixels. The shot is at 1200, the clip is me dragging it down." shots/001.png, clips/001 (14 frames) ~/Documents/see.computer/2026-09-07T14-02-11/take.md
Already have a .mov? see-computer clip <mov> packages it into a take the same way.
Cleanup
Spoken text is not written text. Hesitation, spoken numbers and project names the model has never seen are each handled before Cmd+V, so the agent reads a sentence and not a transcript.
| No. | Said | Pasted | Pass |
|---|---|---|---|
| 01 | SaidUm, so twenty-five thousand | PastedSo 25,000 | filler, numbers |
| 02 | Saidtwo hundred and seventy nine | Pasted279 | numbers |
| 03 | SaidFable five point one | PastedFable 5.1 | numbers, decimal |
| 04 | Saidfive percent | Pasted5 % | numbers, percent |
| 05 | Saidtwo million | Pasted2 million | numbers |
| 06 | SaidIt is, uh, like, fine. | PastedIt is, like, fine. | filler, "like" stays |
| 07 | Saidseven | Pastedseven | left alone |
| 08 | SaidHm. | Pastednothing pasted | filler |
um, uh and hm are dropped, together with the comma or full stop stuck to them. The next word takes over the capital. "like" and "actually" stay, because they are usually real words. A dictation that was only a hum pastes nothing.
Ten and above become digits. Zero to nine stay words unless they carry a percent sign or a decimal point.
Put the words the model misses in ~/Documents/see.computer/vocabulary.md, one per line. They are boosted inside the decoder while it is still choosing, not substituted afterwards. A term only gets its bonus when the model was already considering it, so a long list stays safe. A bonus can win a close call, not overturn a confident one. The file is re-read on change. No restart.
The pill and the tray
A dark chip at the bottom of the screen. It appears when you hold the trigger and goes away when you let go. Cyan bars while listening, red while recording, a lit ring while a take is locked, so a live microphone never looks idle.
If no text field could take the paste, the pill stretches into a card with the text and a Copy button. Nothing is lost.
The tray
~/Documents/see.computer/. Plain text, never pruned for you. Turn it off with "Save Dictation History".If iCloud Desktop & Documents sync is on, those text files sync like any other document. The promise about audio still holds. Audio never leaves the machine.
Globe held. Bars follow the microphone.
Globe and Shift held. Screen and voice captured.
Double tapped. Hands free. Tap to paste, Esc to discard.
No cursor to paste into. The text waits here instead.
Permissions
An app that pastes text and reads a bare modifier key needs more than the average menu bar utility. Each permission is asked the first time the feature that needs it runs, so the first launch has no surprises.
Free and open source
MIT licence, source on GitHub. The app runs on your Mac and stays there. No account, no analytics, no network calls other than the one model download on first launch.
Coming soon: cloud links. Share a take as a link with someone who is not at your Mac. The local app stays free.
~/Library/Application Support/see.computer/models/.~/Documents/see.computer/. Read them, grep them, delete them.Requirements and download
macOS 14 or later on Apple Silicon. Open the DMG, drag the app to Applications, hold Globe. The model downloads on first launch.
Free and open source, MIT. No account.
From source
cd src-tauri cargo tauri build --debug --bundles app
Command line, inside the bundle
see-computer transcribe <wav> see-computer clip <mov>
The same model and the same take packaging, callable from a script.