Expose /usage subscription quota data in statusLine JSON payload

Resolved 💬 15 comments Opened Feb 26, 2026 by mat9922 Closed Apr 26, 2026

Problem

The /usage REPL command shows subscription plan quota (daily limit, remaining messages, rate limit status) for Claude Max/Pro subscribers. However, this data is not included in the JSON payload piped to the statusLine command.

This means there is no way to display subscription usage in the status line, even though Claude Code already has internal access to this data.

Current workaround

Users have to open the Claude Desktop App or run /usage interactively to check their remaining quota. This is inconvenient and — in the case of the Desktop App — can cause .claude.json corruption due to concurrent file writes from both processes (see #3847 or similar).

Requested fields in statusLine JSON

{
  "usage": {
    "daily_messages_used": 42,
    "daily_messages_limit": 100,
    "daily_remaining_percentage": 58,
    "rate_limit_reset_at": "2025-02-26T14:00:00Z",
    "plan": "max_5x"
  }
}

(Field names are suggestions — any structured representation would work.)

Why this matters

  • The statusLine feature is designed for at-a-glance session info
  • Subscription quota is the #1 thing users want to monitor continuously
  • Without it, users resort to keeping the Desktop App open alongside CLI, which causes file contention on ~/.claude.json

Environment

  • Windows 11, Claude Code CLI v2.1.59
  • Claude Max subscription
  • Using statusLine with jq filter

View original on GitHub ↗

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