Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

claude-limits-bar

License: MIT

Claude Code limits and their reset times, always visible in the macOS menu bar.

If you keep hitting "Too many requests, please try again later", this shows you exactly how close you are to the limit and when it resets — before Claude Code cuts you off.

The menu bar shows two ring gauges — the session (5-hour) limit in green and the 7-day limit in purple, percent used inside each — plus the countdown until the session limit resets:

◔66 ◔12  3h 26m

Click it for the full picture: a large donut for the session limit (weekly as a thin outer arc) and one row per limit with its reset time:

✳ Claude Limits          ($) (↻)
        ╭─── 66% Used ───╮
◔66  5-Hour Limit     Today 6:10 PM
◔12  7-Day Limit         Sep 5 1:00 AM
◔18  7-Day (Fable)       Sep 5 1:00 AM

Rings turn orange at 80% or when Anthropic reports elevated severity, and red with ! at 100% — the session (5-hour) limit is the one that usually triggers "Too many requests".

How it works

Claude Code stores its OAuth token in the macOS Keychain (service Claude Code-credentials). This app reads that token and polls the same official endpoint the Claude apps use (api.anthropic.com/api/oauth/usage) once a minute. The token is sent only to api.anthropic.com — nowhere else, nothing is logged or stored.

Works on Pro and Max plans. Requires being signed in to Claude Code (claude → /login).

Install

Requires macOS.

Homebrew

brew install tilbertbalaban/tap/claude-limits-bar

uv / pipx (needs Python 3.9+)

uv tool install claude-limits-bar

(or pipx install claude-limits-bar)

Then:

claude-limits-bar                # run the menu bar app
claude-limits-bar autostart on   # start automatically at login (LaunchAgent)
claude-limits-bar autostart off  # remove the login item
claude-limits-bar status         # print current limits to the terminal

Updating

The app checks GitHub once a day and shows an Update available item in the menu when there's a newer version. To update:

brew upgrade claude-limits-bar        # Homebrew
uv tool upgrade claude-limits-bar     # uv
pipx upgrade claude-limits-bar        # pipx

Then quit the app from its menu and start it again (claude-limits-bar, or log out/in if you use autostart on).

Support

If this app saves you from surprise rate limits, you can support development via the $ button in the app or at base.monobank.ua/tilbertbalaban.

Development

git clone https://github.com/TilbertBalaban/claude-limits-bar
cd claude-limits-bar
python3 -m unittest discover -s tests -v
python3 -m claude_limits_bar.cli status

The data layer (claude_limits_bar/limits.py) is stdlib-only and fully unit-tested; only the menu bar shell (claude_limits_bar/menubar.py) depends on PyObjC (AppKit).

Troubleshooting

  • ✳ ? in the menu bar — open the menu for the reason: no credentials (sign in to Claude Code), an expired token (use Claude Code once — it refreshes the token itself), or no network.
  • Too many requests still happens at <100% — the API reports utilization rounded to whole percent and with a small delay; treat the orange ring as "wrap up what you're doing".

Metadata

Release files for claude-limits-bar 1.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for claude-limits-bar 1.4.1
File Size Uploaded Provenance Actions
claude_limits_bar-1.4.1.tar.gz 16.5 kB With provenance Details for claude_limits_bar-1.4.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for claude-limits-bar 1.4.1
File Interpreter ABI Platform Actions
claude_limits_bar-1.4.1-py3-none-any.whl Python 3 none any Details for claude_limits_bar-1.4.1-py3-none-any.whl

Total release size: 31.8 kB

Release files / claude_limits_bar-1.4.1.tar.gz

Download URL claude_limits_bar-1.4.1.tar.gz
Size 16.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7d1cfb938482abcb634183a10453783875a529d4af2fcdea5497f4a3b9d800b7
BLAKE2b-256 checksum
How to use checksums
3b868358d41fc9dd7a35519441db3cf35246e21763414440e02e932222306eea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / claude_limits_bar-1.4.1-py3-none-any.whl

Download URL claude_limits_bar-1.4.1-py3-none-any.whl
Size 15.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef5f5472c2f034550ec65e00fcb2ab24e6d31683ea88777d8a7473b0053a58a2
BLAKE2b-256 checksum
How to use checksums
53946e3b28c8b8db024633c5c4847238072407cdb1fa94279e753d7053321d06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Security for claude-limits-bar 1.4.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for claude_limits_bar-1.4.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page