Kavanati for developers: the keyboard follows the app
Last updated: 13 October 2026 · 5 min read
עןא דאשאוד becomes git status, akuo becomes שלום) and, per app, can keep the keyboard where it belongs: terminals are English-only out of the box, everything else is Auto.The actual pain
It is not that you cannot spell. It is that you pressed Enter on ךד -ךש in the terminal because the last window was a Hebrew chat, then typed a Hebrew reply in Slack that came out as akuo nv eurv because the last window was the terminal. Windows keeps the input language per window; macOS can keep it per document. Either way, you are the one carrying the state between windows, and you get it wrong a few dozen times a day, usually at the worst moment: the first word of a command, a commit message, a search box.
| Where you are | What you wanted | What came out |
|---|---|---|
| Terminal | git status | עןא דאשאוד |
| Terminal | ls -la | ךד -ךש |
| Teams / Slack | שלום מה קורה | akuo nv eurv |
| VS Code search | handleLogin | ישמגךקךםעןמ |
| Commit message | תיקון באג בהתחברות | ,heui ctd cv,jcru, |
What Kavanati does about it
1. Terminals are English-only, by default
A real terminal never needs Hebrew. Kavanati ships with cmd, PowerShell, Windows Terminal, conhost, mintty and bash (Windows) and Terminal, iTerm2, Warp, Alacritty, kitty, WezTerm and Hyper (Mac) set to English-only: anything typed on the Hebrew layout is retyped as English immediately and the layout switches, no detection needed. Password prompts are skipped on purpose; a password typed in the wrong layout stays wrong rather than being echoed anywhere.
2. IDEs and editors stay in Auto
VS Code, Visual Studio, Rider, IntelliJ, PyCharm, Xcode, Sublime, Cursor: these are Auto (both directions), because they host Hebrew too: commit messages, comments, the Copilot chat panel, a README in Hebrew. In Auto, Kavanati only converts a word that is clearly wrong-layout typing and leaves every real word alone; identifiers like handleLogin are not Hebrew-looking and are never touched. If you never type Hebrew in your editor, set it to English-only yourself: type in the app, open the tray menu → Per-app rules… → This app → English-only.
3. Chat and mail: fix the first word, switch the layout
In Teams, Slack, WhatsApp Desktop, Outlook and the browser, the first word after a window switch is the one that comes out wrong. Kavanati fixes it when you finish the word, switches the keyboard to the language you are evidently writing, and the rest of the sentence comes out right. The detection runs on the Hebrew ↔ English pair specifically, with word lists in both languages, so a real English word in a Hebrew sentence (or the other way round) is not "fixed".
4. Force English on focus (Pro, Windows)
One step further: when you focus an English-only app (a terminal, or an editor you set that way), Kavanati switches the keyboard to English before you type. It is the setting that makes the keyboard actually follow the app instead of correcting after the fact. Settings → Force English on focus.
5. Undo, protect, learn
- Ctrl+Z (⌘Z) right after a fix reverts it in one press, and auto-fix stays quiet until the next sentence.
- Undo the same word twice with the fix key and it is protected for good; manage the list under Settings → Protected words.
- A word you type three times joins your personal dictionary, on your device. Your project's jargon stops being a candidate for fixing.
- Something looks wrong and did not fix? Select it and press Pause / ⌘P / double Ctrl: a selection always flips, both directions. Free and unlimited.
What it does not do
It does not read your screen, send anything off the machine or install a keyboard layout. It hooks keystrokes locally (Windows: a low-level keyboard hook; Mac: an event tap, which needs Accessibility and Input Monitoring permissions), and its only network calls are the update check and the license check. It fixes Hebrew ↔ English only. It is not open source; the security page describes what you can verify yourself (traffic, hashes, permissions). It will not work inside a remote desktop session's remote side unless installed there, and VMs count as separate computers.
Install it like a developer
- Windows: Microsoft Store (signed by Microsoft, Store-managed updates) or the direct download (single exe, no installer, self-updates; not code-signed yet, so SmartScreen may warn once).
SHA256SUMSare published next to the files. - Mac: Kavanati-mac.zip, Developer ID signed and notarized; grant Accessibility and Input Monitoring on first run.
- Teams: one Business key for 5 to 1,000 computers, set by registry policy, license file or MDM profile, silent activation. Deployment guide.