Add effort level to statusLine JSON input

Resolved 💬 4 comments Opened Mar 23, 2026 by warunacds Closed Apr 22, 2026

Title: Add effort level to statusLine JSON input

Feature Request

The statusLine JSON input currently provides model.id and model.display_name, but does not include the current session's effort/thinking level.

Problem

When building a custom status line, there's no way to display the active effort level (e.g., low, medium, high, max). The only workaround is reading effortLevel from settings.json, which doesn't reflect mid-session changes made via /model or /effort.

Proposed Solution

Add an effort field to the model object in the statusLine JSON:

{
  "model": {
    "id": "claude-opus-4-6",
    "display_name": "Opus 4.6 (1M context)",
    "effort": "high"
  }
}

This should reflect the live session value, not just the persisted setting.

Use Case

I have a custom status line that shows model name, context %, usage %, and reset time. I'd like to also show the current effort level so I can see at a glance what mode I'm working in — especially after switching mid-session.

View original on GitHub ↗

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