Status line: show current effort/reasoning level

Resolved 💬 3 comments Opened Mar 28, 2026 by timothy-tu Closed Apr 24, 2026

Feature Request

The status line JSON payload includes model name, context usage, cost, rate limits, and git info — but not the current effort level (low/medium/high/max).

When working with Opus 4.6, effort level significantly affects response quality and cost. It would be useful to see the active effort setting in the status line so users know what mode they're operating in, especially when switching between tasks that need different effort levels.

Requested Change

Add an effort field (or similar) to the status line JSON payload, e.g.:

{
  "model": { "id": "claude-opus-4-6", ... },
  "effort": "high",
  ...
}

This would let custom statusline.sh scripts display the current effort level alongside model name and context usage.

Context

  • Effort is a per-request config (output_config.effort), but in Claude Code it's a session-level setting that persists across turns
  • Users toggle it via /fast or config — knowing the active level at a glance prevents accidentally running expensive tasks at max or cheap tasks at low

View original on GitHub ↗

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