Your coding agent, talking back in Malayalam.
Claude Code and Codex, out loud — the way a Kerala developer actually talks. Not the way a textbook does.
check_circleTwo commands, works offline, no account needed.
auth.ts-ൽ null check fix ചെയ്തു.
Identifiers stay identifiers
Every Malayalam text-to-speech service will read you a sentence. None of them handle what developers actually say: Malayalam grammar wrapped around English technical words, with code left strictly alone.
useEffect stays useEffect. The moment a voice tries to pronounce it in Malayalam script, the whole thing becomes a party trick instead of a tool. brovoice masks every identifier, filename and command before translation and restores it after, so no layer can mangle it.
Filenames, camelCase and snake_case names, dotted paths, CLI flags and ALL_CAPS constants are masked by regex before anything reads them, and restored byte-for-byte after. A test asserts no placeholder ever reaches the speaker.
The identifier is spelled out phonetically in Malayalam script. You cannot map the sound back to the symbol in your editor.
The symbol is spoken in English, the grammar around it in Malayalam. You hear the name you would type.
It says “test”, not “പരീക്ഷണം”
No Kerala developer says പരീക്ഷണം for test, or അനുവാദം for permission. For this vocabulary the English word is the Malayalam word. Formality is not a dial you can turn up on dev jargon — reach past it and you land in a textbook instead of a conversation.
The rule is enforced in code, not left to taste. Each language pack lists the nouns that stay English and the formal renderings that are banned; the test suite checks every shipped line, and the model tier drops its own output rather than caching a line that breaks it.
Works on a plane
The local voice is free, offline, and honestly quite robotic. It exists so the tool works with no account, no key and no network. Add a key when you want it to sound human.
Your own Google key is free at any realistic volume, and brovoice picks it over the hosted voice automatically.
espeak-ng. A formant synthesiser — it sounds like a robot, because it is one. Instant, private, free forever.
- Network
- none
- Cost
- free
- Sounds human
- no
Google or Sarvam neural Malayalam. Handles a Latin identifier mid-sentence without falling apart, which is the whole requirement.
- Your own key
- free tier
- Hosted
- ₹500 / mo
- Sounds human
- yes
More languages next
A language is one TOML file. Copy the Malayalam pack, translate the rule table, fill in which nouns stay English — no Python changes. You know your language's register better than we do, which is the entire reason this is open source.