Tacit reads the field your caret is sitting in — its label, its placeholder, the words around it — and pastes what belongs there.
Your clipboard history and saved snippets, arbitrated by a model that only gets consulted when the answer isn’t already obvious.
curl -fsSL https://tacit.grannis.xyz/install.sh | shmacOS 14+. Installs to ~/Applications, no sudo. Not notarized yet — it’s signed locally, so treat it as a beta you’re choosing to trust.
Click any field, then press ⌘ V — the page intercepts it the way Tacit does.
⌘V is the most-used shortcut on the machine. Taking it over is only defensible if the worst case is an ordinary paste — so declining is a first-class outcome here, not an error path.
The trick is when the model is asked. A round trip is 200–800 ms and ⌘V has to feel instant, so Tacit calls Jev when your caret lands in the field — typically seconds before you paste. By keystroke time the answer is already in memory, and the handler is a dictionary lookup.
This runs the same ranking code the app runs — the Swift scorer ported line for line — and when a field escalates to tier 2, it makes a live call to jev-latest. The clipboard is seeded, not yours: a browser page can’t read your real history, which is rather the point of Tacit being a native app. Click into a field, press ⌘V, and watch which tier fires.
A labelled form. Every field asks Jev live — watch the confidence and the probability spread change with the field.
Click a field to begin.
curl -fsSL https://tacit.grannis.xyz/install.sh | shTacit needs to read field labels and watch for ⌘V. It asks on first launch and starts working the moment you flip the switch.
Address, email, phone. Name them the way a form would label the field — the name is a strong ranking signal, not a caption.
That’s it. There’s no second shortcut to learn and nothing to configure. When Tacit isn’t sure, you get a normal paste.