TUI composer cursor should visibly blink while editing
Problem
When the TUI composer has input focus, the insertion point can be hard to spot because normal editing currently relies on the terminal default cursor shape. In terminals where that default is steady or visually subtle, users may not immediately know where typed text will land.
This is especially noticeable in the bottom composer because most of the UI is static while the user is deciding what to type next. A visible blinking edit cursor would make the active insertion point easier to find.
Desired behavior
When the composer is actively editable, show an explicit blinking edit cursor. Vim normal mode should remain visually distinct from insert/editing mode.
This should be considered alongside existing cursor-style issues such as #21666 and #21828 so the fix does not make embedded terminal cursor reset/flicker behavior worse.
Reference implementation
I prepared a small reference branch on my fork:
https://github.com/60ke/codex/tree/codex/blinking-composer-cursor
Current local approach:
- Use
SetCursorStyle::BlinkingBarfor composer editing, including the default keymap and Vim insert mode. - Keep Vim normal mode on
DefaultUserShapeso it remains visually distinct. - Update the existing composer cursor-style test.
I am opening this issue first because docs/contributing.md says external code contributions are by invitation only. If the Codex team agrees with the direction, I can submit the prepared branch as a PR.
Validation on the reference branch
just fmtcargo test -p codex-tui insert_input_uses_blinking_bar_cursor_stylejust fix -p codex-tui
I also attempted cargo test -p codex-tui; it compiled successfully but aborted in unrelated app::tests::discard_side_thread_keeps_local_state_when_server_close_fails with a stack overflow.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗