claude-code - 💡(How to fix) Fix Feature: expose effort level in statusline JSON schema [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#46505Fetched 2026-04-11 06:18:31
View on GitHub
Comments
1
Participants
2
Timeline
3
Reactions
0
Author
Timeline (top)
labeled ×2commented ×1

The statusline JSON input (piped to the statusline command) is missing the current effort/thinking level. This makes it impossible to display the active effort setting in custom statuslines.

Root Cause

The statusline JSON input (piped to the statusline command) is missing the current effort/thinking level. This makes it impossible to display the active effort setting in custom statuslines.

Code Example

{
  "model": {
    "id": "claude-opus-4-6[1m]",
    "display_name": "Opus 4.6 (1M context)"
  },
  "effort": {
    "level": "max",
    "source": "user"
  }
}
RAW_BUFFERClick to expand / collapse

Summary

The statusline JSON input (piped to the statusline command) is missing the current effort/thinking level. This makes it impossible to display the active effort setting in custom statuslines.

Current behavior

The statusline JSON includes model.id, model.display_name, cost, context_window, rate_limits, etc. — but no effort level field.

Desired behavior

Add an effort (or thinking) field to the statusline JSON, e.g.:

{
  "model": {
    "id": "claude-opus-4-6[1m]",
    "display_name": "Opus 4.6 (1M context)"
  },
  "effort": {
    "level": "max",
    "source": "user"
  }
}

Where level is one of low | medium | high | max | auto (matching the /effort command options), and source indicates whether it was set explicitly by the user or auto-determined.

Why

  • Users can set effort via /effort or the /model selector (← → arrows), but there's no way to see the current setting at a glance without opening those menus
  • The /help menu shows a hardcoded model description that doesn't reflect runtime effort changes
  • Custom statusline scripts (statusline in settings) are the natural place to surface this, but the data isn't available

Environment

  • Claude Code v2.1.100
  • macOS (darwin)

extent analysis

TL;DR

Add an effort field to the statusline JSON output to display the current effort setting in custom statuslines.

Guidance

  • Review the statusline command implementation to identify where the JSON output is generated and modify it to include the effort field.
  • Verify that the effort level is correctly retrieved from the user's settings or auto-determined value.
  • Update the custom statusline scripts to parse and display the new effort field.
  • Test the updated statusline JSON output to ensure it matches the desired format, including the level and source subfields.

Example

{
  "model": {
    "id": "claude-opus-4-6[1m]",
    "display_name": "Opus 4.6 (1M context)"
  },
  "effort": {
    "level": "max",
    "source": "user"
  }
}

Notes

The solution assumes that the effort level is already stored or can be determined within the application. If not, additional work may be required to implement effort level tracking.

Recommendation

Apply workaround: Modify the statusline command to include the effort field in the JSON output, allowing custom statusline scripts to display the current effort setting.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING