[FEATURE] Spellcheck: surface the checker's correction suggestions, not just underlines

Status Open
Reported on v2.1.235
Maintainer reply None cached
Activity 0 comments · opened Aug 18, 2026

Feature request

v2.1.235 added the spellcheck setting, which underlines misspelled words in the prompt input using an installed aspell/hunspell/ispell. It works great — but it only flags words. There is no way to see or apply the checker's suggested corrections; you have to guess the right spelling yourself.

Request: let the user act on an underlined word, e.g. with the cursor on a misspelled word, a keybinding opens a small suggestion menu (similar to the existing :emoji: typeahead or slash-command popup) and accepting an entry replaces the word.

Why this is cheap to add

The suggestion data is already flowing. In ispell -a pipe mode the checker returns suggestions on the very line Claude Code parses:

& helllo 5 0: hello, hell lo, hell-lo, hellhole, hell

The current response parser keeps only the word and discards everything after the colon:

case "&": {
  let t = /^[&?] (\S+) \d+ \d+:/.exec(e);
  return t ? {type: "misspelled", word: t[1]} : {type: "unrecognized"}
}

So no extra checker round-trip or protocol change is needed — capture the tail of the & line, store it alongside the misspelled-word verdict, and add the picker UI.

Non-goal: autocorrect-as-you-type; an explicit, opt-in picker is enough.

Related: #69668 (asked for a built-in checker generally; the underline half shipped in 2.1.235), #81814 (VS Code input box).

Environment

  • Claude Code 2.1.235 (native install), Windows 11
  • hunspell 1.7.0, en_US, configured via "spellcheck": {"enabled": true, "checker": "hunspell", "language": "en_US"} — underlining confirmed working

View original on GitHub ↗