Where does the bug appear (feature/product)?
Cursor CLI
Describe the Bug
Configuring a custom statusLine command replaces both native Cursor CLI footer rows instead of adding a custom row. The model/context, Auto-review, working-directory, branch, and PR indicators disappear. The status-line payload also omits live approval mode, so a custom script cannot faithfully reconstruct the native footer.
Steps to Reproduce
- On Linux, configure statusLine in the active global cli-config.json:
{
“statusLine”: {
“type”: “command”,
“command”: “jq -r ‘(.context_window.total_input_tokens)/(.context_window.context_window_size)’”,
“padding”: 2
}
}
- Restart Cursor CLI.
- Observe that only the command output is shown; the native footer rows are gone.
- Toggle between Allowlist and Auto-review. The command payload contains only autorun, not approvalMode or the computed Auto-review label, so the missing native state cannot be reconstructed reliably.
Expected Behavior
Render custom status-line output in its own row while preserving Cursor’s native footer, matching current Claude Code behavior. Alternatively, support an explicit append/prepend mode. If replacement is intentional, document it prominently and expose live approvalMode/native badge state in the payload.
Operating System
Linux
Version Information
CLI Version: 2026.07.20-8cc9c0b
For AI issues: which model did you use?
N/A - CLI footer rendering issue
For AI issues: add Request ID with privacy disabled
N/A - no model request involved
Additional Information
The shipped CLI implementation routes status-line output to prompt-footer customContent. prompt-footer.tsx renders either customContent or the native rows, and the location row is conditioned on customContent being undefined. No append/prepend composition mode exists. Cursor’s built-in statusline skill says the spec is aligned with Claude Code, but current Claude Code documentation says its custom row does not replace built-in footer badges. Cursor’s public changelog only says output is rendered ‘in the prompt footer’ and does not disclose replacement behavior. The skill also assumes ~/.cursor/cli-config.json, although Linux may use XDG_CONFIG_HOME/cursor/cli-config.json.
Does this stop you from using Cursor
No - Cursor works, but with this issue