What happened
When creating a provider connection through /setup, the identity step displays a cursor in both the Name and Slug fields at the same time.
Keyboard input is initially routed to Name. After pressing Enter, input correctly moves to Slug, but the visual cursor remains visible in Name while another cursor is displayed in Slug.
Exactly one field should display a cursor:
- Initially, only Name should display the cursor.
- After pressing Enter, the cursor should disappear from Name and appear in Slug.
How to reproduce
- Start the Maka TUI.
- Enter
/setup.
- Select a provider that creates a new connection, such as OpenAI.
- Observe the identity step:
Name OpenAI▉
Slug openai▉
- Press Enter to move from Name to Slug, then type
-work. Input is added to Slug, but both cursors remain visible:
Name OpenAI▉
Slug openai-work▉
Expected rendering before pressing Enter:
Expected rendering after pressing Enter and typing -work:
Name OpenAI
Slug openai-work▉
▉ represents the visible reverse-video cursor.
Environment
- Maka version or commit:
c59f11db9 (main)
- OS and version: Arch Linux, x86_64
- Surface: TUI / CLI
- Node.js version:
v25.9.0
Logs, screenshots, or additional context
The problem appears to be visual: keyboard input is routed to the correct active field.
Initial investigation indicates that both editor components are rendered on the identity step. The underlying Editor renders its reverse-video fake cursor even when focused is false; focused only controls the hardware-cursor marker used for IME positioning. Consequently, the inactive editor still displays a fake cursor.
Submitted with Codex assistance under the reporter's direction.
What happened
When creating a provider connection through
/setup, the identity step displays a cursor in both the Name and Slug fields at the same time.Keyboard input is initially routed to Name. After pressing Enter, input correctly moves to Slug, but the visual cursor remains visible in Name while another cursor is displayed in Slug.
Exactly one field should display a cursor:
How to reproduce
/setup.-work. Input is added to Slug, but both cursors remain visible:Expected rendering before pressing Enter:
Expected rendering after pressing Enter and typing
-work:▉represents the visible reverse-video cursor.Environment
c59f11db9(main)v25.9.0Logs, screenshots, or additional context
The problem appears to be visual: keyboard input is routed to the correct active field.
Initial investigation indicates that both editor components are rendered on the identity step. The underlying Editor renders its reverse-video fake cursor even when
focusedis false;focusedonly controls the hardware-cursor marker used for IME positioning. Consequently, the inactive editor still displays a fake cursor.Submitted with Codex assistance under the reporter's direction.