Claude Codeへの指示文で「消して」と打つつもりが「消して」を「消して」のまま漢字変換ミスで送ってしまい、意図と違う挙動になったことはないでしょうか。私は割とあります。急いでいるとき、プロンプトの中で固有名詞のスペルを1文字打ち間違えて、Claudeが違うファイルを探しにいった、というやつです。コードのタイプミスはリンタやエディタが赤線を引いてくれますが、Claude Codeへの指示文そのもののタイプミスは誰も見てくれていませんでした。
それが、v2.1.235(2026年8月に導入)で変わりました。プロンプト入力中の誤字に下線を引いてくれる、スペルチェック機能がオプションで追加されています。地味ですが、実際に設定を追ってみると効く場面がはっきり見えてきたので、今回はこの機能を紹介します。
v2.1.235で何が追加されたのか
公式のリリースノート(github.com/anthropics/claude-code/releases/tag/v2.1.235)を確認すると、この回の目玉は「プロンプト入力中の誤字に下線を引く、オプションのスペルチェック設定を追加」という1行です。二次情報のDevelopersIO(dev.classmethod.jp/en/articles/20260819-cc-updates-v2-1-235/)でも同じ機能が今回の主要アップデートとして紹介されています。
ポイントは「オプション」というところです。既定ではオフになっていて、自分でsettings.jsonに設定を書かないと動きません。しかもClaude Code自身は辞書を持っていません。手元の環境にaspell・hunspell・ispellのいずれかがインストールされていて、初めて動く仕組みです。
設定してみる
公式ドキュメント(code.claude.com/docs/en/interactive-mode の「Check spelling as you type」)によると、設定できる場所は3箇所あります。ユーザー全体の~/.claude/settings.json、コマンド実行時に--settingsで渡すJSONファイル、そして組織のmanaged settingsです。プロジェクト単位の.claude/settings.jsonや.claude/settings.local.jsonには書いても無視される、というのは地味に間違えやすいポイントなので注意してください。
一番手軽なユーザー設定なら、これだけで有効になります。
{
"spellcheck": { "enabled": true }
}
これだけでも動きますが、enabledの隣に3つのフィールドを足せます。
checker:aspell・hunspell・ispellのどれを使うか指定します。指定しなければ、Claude Codeがこの順で最初に見つかったものを使います(全プラットフォーム共通で、Windowsでパッケージマネージャが入れる.cmdのシムも対象に含まれるそうです)。language:en_GBのような、辞書名をそのまま指定します。パスや空白入りの名前を渡すと無視されて、チェッカー側の既定辞書に戻るとのことでした。color: 下線の色です。yellowのような色名でも、#rrggbbのようなカラーコードでも指定できます。
例えば、hunspellでイギリス英語辞書を使い、下線を黄色にするならこう書きます。
{
"spellcheck": {
"enabled": true,
"checker": "hunspell",
"language": "en_GB",
"color": "yellow"
}
}
ちゃんと有効になっているか確かめたい時は、わざとスペルミスした単語を打ってスペースを空けてみてください。下線が引かれれば成功です。もし引かれなければ、チェッカーがPATH上に見つかっていない可能性が高いので、aspell --versionやhunspell --versionで「command not found」にならないか確認しましょう、と公式docsにも書かれています。
チェッカー自体はどう入れるのか
肝心のチェッカーそのものは、Claude Codeの範囲外です。それぞれ普段使っているパッケージマネージャで入れることになります。macOSならbrew install aspell、Ubuntu系ならsudo apt install hunspell、Windowsならパッケージマネージャ経由でaspell/hunspellを入れてPATHを通す、という流れです(Windows向けの配布パッケージはmacOS/Linuxほど選択肢が多くない印象で、ここは環境によって差が出やすいところだと思います)。3つとも入っている場合は、公式docsの記載どおりaspellが優先されます。
正直に書いておくと、実機での下線表示までは確認できていません
ここは正直に書きます。今回の執筆は無人の自動化タスクとして走らせていて、実行環境がユーザーのホームディレクトリや任意のコマンド実行にアクセスできないサンドボックス下でした。そのためaspellやhunspellを実際にインストールし、自分の~/.claude/settings.jsonを書き換えて下線が表示される瞬間を目視する、というところまではできていません。設定ファイルの記法と、公式ドキュメントに書かれている挙動の裏取りまでにとどまっています(わかる方、実際に試した結果をコメントで教えてもらえると助かります)。
ただ、公式docsがかなり具体的に「何を無視するか」まで書いてくれていたので、そこは自信を持って紹介できます。次の章で触れます。
日本語入力には対応するのか
これがこの機能を調べていて一番気になっていたところです。結論から言うと、公式docsに明記されています。「Claude Codeは中国語・日本語・韓国語・タイ語・ラオ語・クメール語・ミャンマー語のテキストをスキップする」とあります。つまり、日本語で書いたプロンプトの誤字は、そもそもチェックの対象外です。
私たちは普段、日本語と英語やコマンド名を混ぜてClaude Codeに指示を出すことが多いと思います。この機能が効くのは、あくまで英語圏の単語のスペルミスに対してです。「関数名のスペルを1文字間違えた」「オプション名をタイポした」というような、コード寄りの英単語のミスを拾ってくれる、と捉えるのが実態に近そうです。
加えて、コードっぽい見た目のものも最初から対象外になっています。/helpのようなスラッシュコマンド、@メンション、URL、ファイルパス、--verboseのようなフラグ、数字やアンダースコアを含む単語、バッククォートで囲まれたテキストはチェックされません。ここは実務上ありがたい設計です。ファイルパスやオプション名にまでいちいち下線を引かれたら、逆にノイズになってうるさいですからね。
チェッカーが落ちている時はどうなるか
もう一つ、公式docsで確認できた挙動として、チェッカーが動かなくなった時にどうなるかも書いてあります。チェッカーが見つからない、指定したcheckerが存在しない、チェッカーが2回連続で失敗する、あるいは応答に15秒以上かかることが3回続くと、Claude Codeは何も下線を引かなくなります。セッションを再起動するまで、静かに無効化されたままです。
これ、意外と使えるフェイルセーフの設計だと思いました。チェッカーの不調がClaude Code本体の応答を遅らせたり止めたりしない、という優先順位の付け方が伝わってきます。
単語を無視させたい時は
固有名詞やプロジェクト特有の造語まで誤字扱いされると邪魔になりますが、そこはClaude Code側では対応していません。公式docsによると、Claude Code自身は単語リストを持っておらず、使っているチェッカー(aspell/hunspell/ispell)が「知らない」と判断した単語がそのまま誤字として扱われる仕組みです。特定の単語を無視させたい場合は、そのチェッカー自身の個人辞書に単語を足す必要があります。足した単語が反映されるのは、Claude Codeを再起動した後、とのことでした。
設定する価値はあるか
正直なところ、地味な機能です。派手にワークフローが変わるものではありません。ですが、Claude Codeへの指示文はコードと違ってコンパイラもリンタも通らず、そのまま解釈されてしまいます。タイプミスが原因で意図しないファイルを触られたり、意図しないコマンドが提案されたりするリスクを考えると、コストゼロに近い保険としては悪くないと思っています。
設定自体はsettings.jsonに数行足すだけで済みますし、日本語プロンプトが中心の人にとっては影響範囲も限定的です。英語のオプション名やコマンド名を頻繁に打つ人、英語でClaude Codeとやり取りすることが多い人ほど、恩恵は大きいはずです。まずは有効にしてみて、うるさいと感じたらenabledをfalseに戻す、くらいの気軽さで試してみるのがいいと思います。
Claude Codeの「地味だけど効く」設定は他にも書いてきました。ツール実行のログをたたんで要点だけ見るFocus viewや、手作業の確認をそもそも仕組みに任せるHooksもこの系譜です。承認を毎回求めなくなったオートモードのデフォルト化とあわせて、自分の運用に合いそうなものから拾ってみてください。
実際に手元で試して「これは効く」「日本語混じりだとこう動いた」という報告があれば、コメントで教えてもらえるとうれしいです。


コメント