
Why Shift+Enter doesn't work in Claude Code (and how to fix it)
TL;DR Enable the Kitty keyboard protocol in your terminal (WezTerm: add config.enable_kitty_keyboard = true to your wezterm.lua ) Open a new terminal window If you've been using Claude Code and noticed that Shift+Enter just submits your message instead of adding a new line, you're not imagining things — it genuinely doesn't work out of the box. The good news is it's actually a one-part fix, and once you know why it's broken, it makes total sense. Why it doesn't work Claude Code does support a chat:newline action, but the reason Shift+Enter doesn't trigger it comes down to how your terminal handles key input. Most terminals, by default, send the exact same byte sequence for both Enter and Shift+Enter. That means even though Claude Code is perfectly capable of inserting a new line, your terminal never actually tells it that Shift+Enter was pressed — it just sees Enter, and submits. This is a known limitation of the traditional XTerm key encoding that most terminals use. The fix is to ena
Continue reading on Dev.to
Opens in a new tab




