Skip to content

Status line: show current effort/reasoning level #40261

Description

@timothy-tu

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions