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 Lighttheme cursor-agentCLI: latest as of 2026-05-16- Terminal: Cursor’s integrated terminal (also reproducible in iTerm2 with a light profile)
Reproduction
- Set your terminal/IDE to a light color scheme (e.g.
Cursor Lighttheme, or any iTerm2 light profile). - Run
cursor-agentin that terminal. - Press
i(witheditor.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.
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[?25lto hide the host terminal’s native cursor - Renders its own cursor via ANSI inverse video on the current text cell
- Emits
- 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)
"workbench.colorCustomizations": { "terminalCursor.foreground": "#ff00ff" }in Cursor IDE settings — has no effect becausecursor-agenthides the native cursor."terminal.integrated.cursorStyle": "block"+"cursorBlinking": true— same reason, doesn’t apply to the agent’s self-rendered cursor.- Adjusting
terminal.ansiBrightBlackinworkbench.colorCustomizations— marginal improvement at best, also breaks other dim text in the terminal. - Reviewed
cli-config.jsonschema 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