{"id":49463042,"url":"https://github.com/ncreasor/claude-usage","last_synced_at":"2026-05-03T14:03:30.471Z","repository":{"id":351873090,"uuid":"1212255672","full_name":"ncreasor/claude-usage","owner":"ncreasor","description":"Claude usage in your menu bar","archived":false,"fork":false,"pushed_at":"2026-04-30T09:50:02.000Z","size":5386,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-30T11:26:22.322Z","etag":null,"topics":["claude","claude-code","claude-usage","claude-usage-monitor"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ncreasor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-16T07:53:59.000Z","updated_at":"2026-04-30T09:49:50.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ncreasor/claude-usage","commit_stats":null,"previous_names":["ncreasor/claude-usage"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/ncreasor/claude-usage","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncreasor%2Fclaude-usage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncreasor%2Fclaude-usage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncreasor%2Fclaude-usage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncreasor%2Fclaude-usage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ncreasor","download_url":"https://codeload.github.com/ncreasor/claude-usage/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ncreasor%2Fclaude-usage/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32571456,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["claude","claude-code","claude-usage","claude-usage-monitor"],"created_at":"2026-04-30T11:01:19.462Z","updated_at":"2026-05-03T14:03:30.426Z","avatar_url":"https://github.com/ncreasor.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Claude Usage Monitor\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![Platform: macOS](https://img.shields.io/badge/Platform-macOS-blue.svg)](#)\n\nYour Claude session and weekly limits as progress bars in the macOS menu bar, so you stop opening a browser tab just to check.\n\n![menu bar preview](docs/preview.png)\n![compact style + settings preview](docs/settings.png)\n\n## Why\n\nI kept a Claude tab pinned just to see how close I was to the weekly limit, and I got tired of it. Now it's in the menu bar.\n\n## How it works\n\nA small daemon grabs your Claude session cookie from the browser, hits the Claude API, and writes the result to a file. A native macOS status bar app reads that file and draws the bars.\n\nYou don't paste tokens anywhere, and there's no browser extension. If you're signed into [claude.ai](https://claude.ai) in a browser, it works.\n\n## Requirements\n\n- macOS\n- [Homebrew](https://brew.sh)\n- Browser (Chrome, Brave, Arc), signed into claude.ai\n\n## Install\n\n```bash\ngit clone https://github.com/ncreasor/claude-usage.git\ncd claude-usage\n./install.sh\n```\n\nThe installer grabs Python 3.13 via Homebrew if you don't have it, starts the background daemon, and launches the status bar app.\n\n## Settings\n\nClick the progress bars in the menu bar to open the dropdown, then go to **Settings**.\n\n| Setting | Options |\n|---|---|\n| Style | Standard (`65% ──── 2h`) or Compact (two thin bars, no text) |\n| Color theme | Orange, Blue, Green, Purple, Red, Teal, Pink, Yellow |\n| Refresh interval | 1, 2, 5, 10, 15, or 30 minutes |\n| Time format | Rounded (`5m`, `2h`) or Exact (`4m`, `1h 23m`, `2d 6h`) |\n| Weekly bar | Show in menu bar or hide (still visible in the dropdown when hidden) |\n| History charts | Show or hide the 24h session and 7d weekly usage charts |\n\nSaved to `~/.claude-usage/config.json`.\n\n## Uninstall\n\n```bash\n./uninstall.sh\n```\n\nStops the daemon, removes the plugins, and asks whether to clear cached data.\n\n## Privacy\n\nThe only network request goes to Anthropic: `GET https://claude.ai/api/organizations/{id}/usage`. No third-party server, no telemetry, nothing else phones home.\n\nTo read your usage, the daemon opens browser's local cookie database — the same cookies browser itself sends to claude.ai on every page load.\n\nIf you want to check, the entry points are [server.py](server/server.py), [claude-usage.py](displays/systray/claude-usage.py), and [claude_shared.py](claude_shared.py). You can read it end to end in a few minutes.\n\n## Logs\n\n```bash\ntail -f ~/Library/Logs/claude-usage.log          # daemon\ntail -f ~/Library/Logs/claude-usage-systray.log  # status bar app\n```\n\n## Roadmap\nSettings\n- [x] Styles \u0026 Colors\n- [x] Refresh interval\n- [x] Time format\n- [x] Getting updates\n- [ ] Languages\n- [ ] Health\n\nAI\n- [x] Claude\n- [ ] ChatGPT\n- [ ] Grok\n\nBrowsers\n- [x] Chrome\n- [x] Arc\n- [ ] Safari\n- [ ] Firefox\n- [x] Brave\n\nModes\n- [x] Subscription\n- [ ] Api\n\nOS\n- [x] MacOS\n- [ ] Windows\n\n## Contributing\n\nIssues and PRs welcome. If it's useful to you, a ⭐ genuinely helps other people find it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fncreasor%2Fclaude-usage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fncreasor%2Fclaude-usage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fncreasor%2Fclaude-usage/lists"}