CLAUDE_CODE_NATIVE_CURSOR

Updated by

CLAUDE_CODE_NATIVE_CURSOR is a Claude Code environment variable: Use native terminal cursor control. Extension of the terminal-native capabilities that came in with v2.1.113's binary launcher. If cursor positioning looks off in your terminal (jumping, flickering, wrong position), try toggling this. Particularly relevant on non-standard terminals or tmux configurations. Added between v2.1.128 and v2.1.138 and still present in v2.1.294. It is listed in the official reference.

StatusPresent in v2.1.294
AddedAdded between v2.1.128 and v2.1.138
CategoryTerminal and UI
Official docsListed

How to set it

For one session, export it in the shell that starts Claude Code:

export CLAUDE_CODE_NATIVE_CURSOR=<value>
claude

To apply it to every session, add it to the env object of a settings file:

// ~/.claude/settings.json
{
  "env": {
    "CLAUDE_CODE_NATIVE_CURSOR": "<value>"
  }
}

Release notes that mention it

Related variables

Frequently asked questions

What does CLAUDE_CODE_NATIVE_CURSOR do?

Use native terminal cursor control. Extension of the terminal-native capabilities that came in with v2.1.113's binary launcher. If cursor positioning looks off in your terminal (jumping, flickering, wrong position), try toggling this. Particularly relevant on non-standard terminals or tmux configurations.

Which Claude Code version has CLAUDE_CODE_NATIVE_CURSOR?

Added between v2.1.128 and v2.1.138 and still present in v2.1.294.

How do I set CLAUDE_CODE_NATIVE_CURSOR?

Export it before starting Claude Code (export CLAUDE_CODE_NATIVE_CURSOR=value), or add it to the "env" object in ~/.claude/settings.json to apply it to every session.

All variables, searchable: Claude Code environment variables.