Expose /usage subscription quota data in statusLine JSON payload
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
statusLinewith jq filter
This issue has 15 comments on GitHub. Read the full discussion on GitHub ↗