なんかこれで困ってるっぽいひとを見かける気がするので記事にも残しておく。
Claude Code が急にこれを吐き続けるようになったんだけどなに?
— 高梨ギンペイ (@ginpei_jp) July 16, 2025
> API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"messages.49: all messages must have non-empty content except for the optional final assistant message"}}
今は一度終了して –continue 付きで再起動、復活している
— 高梨ギンペイ (@ginpei_jp) July 16, 2025
現象
楽しくお話してたところ突然 400 以外を言わなくなった。エラー内容も謎。
API Error: 400 {“type”:”error”,”error”:{“type”:”invalid_request_error”,”message”:”messages.49: all messages must have non-empty content except for the optional final assistant message”}}
対処
CC の再起動で戻った。
「再起動」は、普通に終了 (/exit
や Ctrl+D Ctrl+D
) してから起動時に --continue
オプションを付けることで直前の会話を再開できる。
$ claude --continue
再開の必要がなければオプションなしに新規セッションを開始してください。
Error: 400って?
たぶん HTTP ステータスコードのひとつ。不正(不正確)な通信要求が原因のエラーの総称。
この場合は Claude Code のクライアント(ローカルで動いてるアプリ)がおかしくなって変な内容を Anthropic 社のサーバーへ送っているんだろうと思う。空っぽになってるっぽい?
おしまい
通信内容を覗けばもう少し正確な原因もわかるかもだけど、まあ vibe coding なんだし対処も vibe (ノリ)で良いんじゃないですか。知らんけど。