Repository navigation
v0.1.12 — Fix grammar keeps your language, and the settings page says when a change is unsaved
Fix grammar no longer writes another language over your text, and the settings page says when a change is not saved.
Fix grammar keeps your language
A small model can answer text that is too broken to recognise in another language: Qwen3.5 4B in Microsoft Edge answered tis is a test, a i am cheking if it work in French on every run. Fix grammar now checks that the reply keeps the author's words. If it does not, the request is asked once more with the language rule restated. If the second reply leaves the language too, your text is left as it was and the error says why.
The check allows for the spelling a proofread fixes, so chat shorthand is corrected rather than refused: pls snd me teh fil b4 frday thx becomes Please send me the file before Friday. Thanks. Measured on Qwen3-4B (llama.cpp): it fires on 0 of 58 same-language corrections and on 38 of 44 real translations, including English into French 7 of 7. It catches a different language, not a close one: Spanish into Portuguese or Catalan into Spanish can pass. Details in MODELS.md.
Unsaved changes on the settings page
The settings page says when changes are not saved yet: a line in the footer, a dot in the tab title and the Save button. Leaving the page with unsaved changes asks the browser to confirm.
Also in this release
- When the browser has no built-in model (Brave, Edge, or Chrome below its requirements), the message names "Run a model inside this browser" first, before LM Studio, Ollama or llama.cpp.
- A build-time dependency (
nanoid, under Vite) was updated for a security advisory. It is not in the package: every file indist/was byte-identical before and after.
How it is known
On the released tree, npm run verify passed 536 checks and failed none: unit checks, test:render and test:ext. The language check was run end to end on 2026-10-04: the built extension in Brave Origin 153, with a Qwen3-4B on llama.cpp that answers ola k ase, aver si qedamos el finde xfa in Portuguese. It retried once, refused, and left the text alone. Two shorthand texts were corrected on the first request. test:render checks that the refusal reaches the page as an error card and the field is unchanged. The unsaved-changes confirmation was seen in Brave Origin.