Expose reasoning effort level in status line JSON

Status Closed — not planned
Maintainer reply None cached
Activity 4 comments · opened Mar 20, 2026 · closed Mar 20, 2026

Feature Request

The custom status line (statusLine setting) receives JSON via stdin with model info, context window, rate limits, vim mode, etc. — but reasoning effort (high/medium/low) is not included.

Use Case

When customizing the status line, it's useful to see the current reasoning effort level at a glance, especially when switching between effort levels during a session. Currently there's no way to display this without reading internal state.

Proposed Solution

Add a field to the status line JSON input, e.g.:

{
  "reasoning": {
    "effort": "high"
  }
}

Or alternatively under model:

{
  "model": {
    "id": "claude-opus-4-6",
    "display_name": "Opus",
    "reasoning_effort": "high"
  }
}

Current Workaround

None — the effort level is not exposed in any readable config file or status line data.

Environment

  • Claude Code on WSL2 (Ubuntu 24.04)
  • Custom status line script using jq to parse the JSON input

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗