WritingTools is the leading open-source system-wide writing assistant: select text anywhere, press one hotkey, pick proofread or rewrite from a popup, on your own keys or local models, free. OpenCues shares the values and removes the remaining friction: no selection, no hotkey, no popup.
What WritingTools does well
Free, cross-platform (Windows, Linux, macOS), model agnostic including Ollama and any OpenAI-compatible endpoint, and genuinely open source. As a rewrite hotkey it is hard to fault.
Where WritingTools struggles
The pipeline is selection, hotkey, popup, then a paste that replaces your selection wholesale; the README's own revert story is ctrl+z, the host app's undo stack. There is no inline generation while typing (the no-selection chat window was deprecated on Windows), no live data, and no passive suggestions: it is a rewrite hotkey, well executed, and only that.
By the numbers
Three steps for its best case, a preset rewrite on a selection, against one; five for an ad-hoc answer, two of them the copy-paste back from its chat window. Its own README names ctrl+z as the revert. Counts and sequences in the full comparison.
How OpenCues differs
Rewriting is one primitive in OpenCues, not the product. Typing a _ generates new content, answers questions, transforms in place and pulls live data, and cues offer word alternatives as you type. OpenCues also integrates where a hotkey rewriter cannot follow: coding agents and terminals. Licence difference for integrators: Apache-2.0 versus GPL-3.0.
WritingTools reaches any native app on all three platforms, which OpenCues integrations do not: they cover terminals, coding agents and Chrome. OpenCues answers with per-word revertable edits and live-data blanks.
OpenCues is also extensible by design: cues and blanks are markdown files you write yourself, and blanks can bind shell scripts or runtime classes, all under an open standard anyone can implement. See write your own cue and write your own blank.
Related: Full comparison · Cues vs blanks · WritingTools on GitHub