Cursor-agent CLI input cursor invisible on light-theme terminals — please expose theme/cursor color in cli-config.json

Where does the bug appear (feature/product)?

Cursor CLI

Describe the Bug

Summary

When running cursor-agent (CLI) inside a host terminal that uses a light color scheme, the input box (rendered by the agent itself as a dark block) hides the cursor entirely. There is currently no way to fix this from the user side because cli-config.json does not expose any theme/cursor-color configuration.

Environment

  • Cursor IDE (host terminal): macOS, Cursor Light theme
  • cursor-agent CLI: latest as of 2026-05-16
  • Terminal: Cursor’s integrated terminal (also reproducible in iTerm2 with a light profile)

Reproduction

  1. Set your terminal/IDE to a light color scheme (e.g. Cursor Light theme, or any iTerm2 light profile).
  2. Run cursor-agent in that terminal.
  3. Press i (with editor.vimMode: true) or just start typing — note the input box renders as a dark block with light foreground text and a magenta prompt.
  4. Try to locate the text cursor inside the input box.

Expected behavior

The cursor should be visible regardless of host terminal theme.

Actual behavior

The cursor is invisible. Screenshot attached (or describe: dark input box, light text, no visible caret in INSERT mode).

Root cause analysis (best guess)

  • cursor-agent’s input box appears to be rendered by Ink/React-Ink, which:
    • Emits \e[?25l to hide the host terminal’s native cursor
    • Renders its own cursor via ANSI inverse video on the current text cell
  • The fg/bg colors used for the input box and the inverse-video cursor are hardcoded assuming a dark terminal background (the brand-dark aesthetic Cursor IDE ships with by default).
  • On a light-theme host, the dark input block becomes a high-contrast island, and the inverse-video cursor blends into the surrounding light foreground text → invisible.

What I tried (none of these work)

  1. "workbench.colorCustomizations": { "terminalCursor.foreground": "#ff00ff" } in Cursor IDE settings — has no effect because cursor-agent hides the native cursor.
  2. "terminal.integrated.cursorStyle": "block" + "cursorBlinking": true — same reason, doesn’t apply to the agent’s self-rendered cursor.
  3. Adjusting terminal.ansiBrightBlack in workbench.colorCustomizations — marginal improvement at best, also breaks other dim text in the terminal.
  4. Reviewed cli-config.json schema at Configuration | Cursor Docs — confirmed there is no theme/color field.

Proposed solution

Extend the cli-config.json schema with an optional theme block so users on light-theme hosts (or anyone with custom preferences) can override the hardcoded colors:

{
  "version": 1,
  "editor": { "vimMode": false },
  "permissions": { "allow": [], "deny": [] },
  "theme": {
    "input": {
      "background": "#eff1f5",
      "foreground": "#4c4f69",
      "cursor": "#d20f39",
      "promptArrow": "#8839ef"
    },
    "statusBar": {
      "background": "transparent",
      "modeIndicator": "#d20f39"
    },
    "preset": "auto"
  }
}

### Steps to Reproduce
Set your terminal/IDE to a light color scheme (e.g. Cursor Light theme, or any iTerm2 light profile).
Run cursor-agent in that terminal.
Press i (with editor.vimMode: true) or just start typing — note the input box renders as a dark block with light foreground text and a magenta → prompt.
Try to locate the text cursor inside the input box.

### Expected Behavior
The cursor should be visible regardless of host terminal theme.





### Operating System
MacOS

### Version Information
cursor-agent CLI: latest as of 2026-05-16








### Does this stop you from using Cursor
Yes - Cursor is unusable

This is a known bug.

As a workaround, add this to your shell profile (~/.zshrc or ~/.bashrc):

export TERM_THEME=light

Then restart your shell and relaunch the CLI. That should make everything readable.

Your proposed cli-config.json theme block is a great suggestion. We’ll be tracking this post to gauge interest from the community, which helps our product team prioritize accordingly.

You may also find this related thread helpful, where our team discussed the root cause in more detail: Cursor CLI agent - Input Window black background with black text