Shift+Enter not working in the latest version of Cursor IDE(Claude Code Extension)

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Shift + Enter (line break) does not work in the latest version of the Claude Code Extension for Cursor IDE.

Steps to Reproduce

  1. Open the Cursor IDE
  2. Open the Claude Code Extension in Cursor IDE.
  3. After entering text, press the Shift + Enter command.
  4. The chat starts immediately without a line break.

Expected Behavior

Line breaks should occur normally.

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Version: 1.6.26 (Universal)
Commit: 1.99.3
Date: 6af2d906e8ca91654dd7c4224a73ef17900ad730
Electron: 2025-09-16T17:12:31.697Z
ElectronBuildId: 34.5.8
Chromium: undefined
Node.js: 132.0.6834.210
V8: 20.19.1
OS: 13.2.152.41-electron.0

Additional Information

/terminal-setup has already been executed, and removing it from keybindings.json and rerunning it yields the same result.
This occurs only within the extension inside Cursor IDE.

This issue occurred after updating Cursor IDE yesterday, line breaks had been functioning normally until then.
Currently, line breaks are only possible using Option + Enter.

6 Likes

Hey, thanks for the report. I can repro this, and it appears to work on version 1.5.11.

I wanted to come add to this, the same thing is happening for me. I checked the keybindings.json and attempted to remove/delete that file in an attempt to fix the problem, however after running terminal-setup in claude the issue persists. If I can help provide some details, let me know and I’d be happy to share what I can.

Interestingly, if I first type the “\” and then use shift+enter, it will then go to the new-line successfully, only after automatically removing the “\” which isn’t normal behavior for Claude Code, however it could also be an update.

3 Likes

+1 happening to me too. Surprising how important this shift+enter workflow is for me.

1 Like

+1 for me as well. Using \ then shift+enter as a workaround for the time being. Also can no longer copy (control+c) from the Claude Code extension because it wants to close the terminal instead. Big part of my workflow.

2 Likes

it works fine if you’re using the explicitly named “terminal” window that’s in cursor - so what I think happened is that the window the extension creates when you hit the anthropic button is not correctly labelled as a “terminal” window, and the shift enter exception that’s tied to being used in a “terminal” window doesn’t fire.

The same issue for me, I had a great workflow using it with Cursor, but now I have to switch to VSCode.

I believe you’re onto something here. I just tried it in the terminal at the bottom, ignoring the “Extension Button” and viola, the “Shift+Enter” works just fine. So another suitable workaround is to create it with the terminal at the bottom and then move the terminal to your normal position. At least until this is fixed.

2 Likes

mkaulfers’ solution was helpful :clap: . However, in my case the default method (Claude Code’s /terminal-setup) did not work. Instead, after replacing the keybinding(keybindings.json) with the text below and applying mkaulfers’ solution, I was able to use it the same way as before.

{
    "key": "shift+enter",
    "command": "workbench.action.terminal.sendSequence",
    "args": {
        "text": "\u001b\n"
    },
    "when": "terminalFocus"
}

After replacing the keybinding, close any open Claude Code and Terminal windows and restart them for the changes to take effect.


The key point of this setup is that you don’t launch Claude by clicking its extension button, but rather by running Claude inside VSCode (or Cursor)’s terminal. To avoid any confusion, I’ll summarize the steps again below:

  1. Replace the VSCode (or Cursor) keybinding

    (Shift + P > Preferences: Open Keyboard Shortcuts (JSON))

  2. Launch the Terminal

  3. Run Claude in Terminal (then connect it to the IDE with the /ide command)

  4. (Optional) Move the terminal window to a convenient position


I’m still not certain whether this issue is related to Cursor, Claude Code, or an OS policy. However, for me it started occurring right after I updated Cursor to the latest version (2–3 days ago).
(For reference: I’m a macOS user.)

I hope this will be helpful to anyone else experiencing the same problem.

1 Like

I’m experiencing the same issue and I’m also on macOS.

It works fine in the regular terminal, as others have reported, but it would be great to have this problem fixed.

I can confirm that it started happening after the following update:

Version: 1.6.23
Commit: 1.99.3

I reported it right away to Cursor via their dedicated support email. They initially gave me a few suggestions, but none of them worked, and since then I’ve been put on hold for dedicated support — which hasn’t responded yet.

2 Likes

+1 Happening to me too.

1 Like

For MacOS and Cursor IDE, the path of the keybinding is "/Users/benyamin/Library/Application Support/Cursor/User/keybindings.json".

In my case, when I open the Claude Code using Cursor/VSCode extension, the Shift + Enter doesn’t add a new line. But when I open the Claude Code via terminal or the terminal inside the IDE, it works well.

An alternative solution in this situation in MacOS is using Option + Enter

I’ve been really stressed about this issue for about a week now.
Most of the suggested solutions are just about setting up keybindings, but from what I’ve checked, this problem is that Claude Code’s console doesn’t actually recognize Cursor’s keybinding at all. It seems to be a bug that appeared after a certain version update, so I don’t think it’ll take too long to track down the cause. Hopefully a quick fix will be released soon.

As a temporary workaround, I used BetterTouchTool (BTT). Maybe this can help others waiting for a proper fix. By default, Ctrl+J is mapped to line break. What I did was remap Shift+Enter inside the Cursor app using BTT. Please refer to the attached screenshot for the setup.

1 Like

hero

What I do now is just open up a new terminal window, drag it to the right side (split screen) and then launch claude manually. The key shortcuts work. It’s annoying not to be able to just hit the Claude “button” but it’s better than nothing.

1 Like

Thank you for your comment :slight_smile:

I resolved it by modifying keybindings.json, but it stopped working again at some point.

So I’m now using it by opening the terminal and moving it to the right sidebar.

This seems like the most practical solution until the Cursor team fixes it.

Now it doesn’t even work from the normal terminal screen.

So the issue isn’t with Cursor, it’s with Claude Code. You can create a GitHub issue so the developers can fix it.

I’ve also been frustrated by this issue, and resolved it by adding a key-binding to make shift+enter send alt/option+enter in Terminal:

    {
        "key": "shift+enter",
        "command": "workbench.action.terminal.sendSequence",
        "args": {
            "text": "\u001b\r"
        },
        "when": "terminalFocus"
    }

I actually prefer this to the previous way which littered my Claude Code prompts with backslashes.

I’m having the same issue too, Cursor v. 1.6.45
I thought at first it was a problem with Claude Code. But then I realized the same thing happens in Codex (CLI) if it’s any terminal window spawned via “Create New Terminal in Editor Area” (or the Claude Code Extension Button)
If it’s done in the Terminal area at the bottom of Cursor, it works just fine.
My hunch is the command scope of workbench.action.terminal no longer applies or has changed to terminals spawned within the editor area.

1 Like