Expose effort level in custom statusline JSON input

Resolved 💬 3 comments Opened Apr 13, 2026 by ankuryadaviimb Closed Apr 17, 2026

Summary

The custom statusline JSON input (passed via stdin to statusLine.command) does not include the current effort level. This makes it impossible to display effort in a custom statusline script.

Current behavior

The statusline JSON includes model, workspace, cost, context_window, rate_limits, session_id, etc. but no effort, effort_level, or equivalent field.

The /effort command and the built-in spinner/logo show effort correctly, but that information is not accessible to custom statusline commands.

Requested behavior

Add an effort or effort_level field to the statusline JSON input, e.g.:

{
  "effort_level": "high",
  ...
}

This should reflect the live effort level, including changes made via /effort mid-session.

Context

  • Version: 2.1.104
  • Multiple users have requested this (previously tracked in #38392, #38476, #43428)
  • The workaround of reading effortLevel from settings.json is static and does not reflect /effort changes

View original on GitHub ↗

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