The writing that is not the work
The work is the decision: what to build, what to cut, what the user actually needs. The writing is how the decision travels. A spec, a ticket, a Slack reply, a comment on a design, a paragraph of context for the engineer who picks it up tomorrow. It is a lot of prose, and it is prose you already know how to say, because you said it in the meeting.
Speaking runs at roughly 150 words a minute; typing at roughly 40. The spec that takes twenty minutes to type takes seven to say, and the spoken version tends to have more of the why in it, because saying the why is cheap.
Where it lands
DeftNib is a key, not an app you switch to. Hold it, talk, let go, and the text is inserted where your cursor is. These are the places a product team types all day, and the key works the same in each.
Slack
The reply lands punctuated in the message box, with "um" and the false starts gone. Hit send, next thread. Email and Slack, in detail.
Linear
The issue description is a text field. Dictate the context, the expected behavior and the acceptance criteria as three sentences, and press the key again for the next one.
Notion
A spec is paragraphs, and paragraphs are where dictation pays. When you enumerate things without saying "list", they come out as bullets, as in the example at the top of this page.
Figma comments
A comment on a frame is a small text field like any other. Say what is wrong and what you would try; the punctuation is placed for you.
Google Docs
Google Docs draws its own editor, and the app cannot always tell where the cursor is. When it cannot, it shows a card with the text and a single ⌘V pastes it. Same words, one extra keystroke.
Lists when you enumerate
"For the release we need to update the changelog, run the tests and tell support" is one breath when you say it and three lines when you read it. The pipeline notices the enumeration and writes the bullets, without you saying the word list. It is one of the rule engines that run before any model, so it is the same every time.
Snippets for what you write every day
The meeting link, the ticket template, the sentence you paste at the top of every spec. Save it once as a snippet, say its name, and the whole block goes in byte for byte, capitals and line breaks included. Snippets do not pass through the pipeline: what you saved is what gets inserted. Dictionary and snippets, explained.
Both languages in one team
If your team writes in Spanish and English, or in the Spanglish in between, the pipeline treats Spanish as a main case: opening question marks, voseo, and "mergear" spelled the way your engineers spell it. Spanish dictation, done right.
Teams: one admin key, one invoice
Team packs start at 5 seats and go up to 50, bought once. One admin key opens a page to see every seat and free a Mac when someone leaves, and each person gets their own key. Nothing anyone dictates leaves their Mac, and nobody, the admin included, sees what was said. Team licenses and prices.
Mac with Apple Silicon and macOS 26 or later. Free up to 4,000 words a week, no account.
By downloading you agree to the Terms and the Privacy Policy.
Questions
Does it work in Linear, Notion and Figma?
Yes. Their inputs are text fields, and the key inserts where the cursor is. The full pipeline runs there: punctuation, fillers out, corrections applied.
What about Google Docs?
Google Docs draws its own editor, so the app cannot always see the field. When that happens, DeftNib shows a card with the text and a single ⌘V pastes it. Nothing is lost and nothing leaves the Mac.
Can the team buy it together?
Yes. Team packs start at 5 seats, bought once, with one admin key to manage seats and one invoice. Nobody, not even the admin, sees what anyone dictates.