Expose fast mode status in statusLine JSON
Summary
The statusLine JSON input (used by custom statusline-command scripts) does not include any field indicating whether fast mode (/fast) is active. This makes it impossible to show a fast mode indicator in a custom status line.
Current behavior
When fast mode is toggled via /fast:
- The built-in
↯icon appears next to the prompt - No field changes in the statusLine JSON —
model.id,model.display_name,output_style.name, and all other fields remain identical
Verified empirically on v2.1.83 by dumping the full statusLine JSON with fast mode off and on — the payloads are identical except for cost/token counters.
Requested change
Add a fast_mode boolean (or similar) to the statusLine JSON schema:
{
"model": { "id": "claude-opus-4-6[1m]", "display_name": "Opus 4.6 (1M context)" },
"fast_mode": true,
...
}
This would allow custom statusline scripts to render a visual indicator, e.g.:
fast_mode=$(echo "$input" | jq -r '.fast_mode // empty')
if [ "$fast_mode" = "true" ]; then
parts+=("\033[0;34mFAST\033[0m")
fi
Why
Users who customize their status line (via statusline-command in settings) lose the fast mode indicator because the ↯ icon is rendered separately by the CLI. The status bar is the natural place to surface mode state alongside model name, context usage, and cost.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗