Status line JSON missing current effort level

Resolved 💬 3 comments Opened Apr 9, 2026 by Liorrr Closed Apr 13, 2026

Description

The status line JSON payload (statusLine command input) does not include the current effort level. When a user sets /effort max in a session, there is no field in the JSON that reflects this.

Current behavior

The JSON includes output_style.name which always shows "default" regardless of the current /effort setting:

{
  "output_style": {"name": "default"},
  ...
}

No effort, effortLevel, or effort_level field exists in the payload.

Expected behavior

The status line JSON should include the current session effort level, e.g.:

{
  "effort_level": "max",
  ...
}

This would allow status line scripts to display the active effort level without workarounds (like reading settings.json which only has the persistent value, not session overrides from /effort).

Environment

  • Claude Code v2.1.97
  • Windows 11
  • Status line configured via settings.jsonstatusLine.type: "command"

Workaround

Reading effortLevel from ~/.claude/settings.json — but this only shows the persistent setting, not session-only /effort overrides.

View original on GitHub ↗

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