{"id":49967150,"url":"https://github.com/tiennm99/claude-code-usage-bubble","last_synced_at":"2026-05-23T07:12:16.614Z","repository":{"id":358189568,"uuid":"1240262010","full_name":"tiennm99/claude-code-usage-bubble","owner":"tiennm99","description":"Floating, draggable bubble showing Claude Code and Codex usage on Windows. Drag anywhere, snap to edges, click to expand.","archived":false,"fork":false,"pushed_at":"2026-05-18T06:23:32.000Z","size":504,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-18T06:41:14.775Z","etag":null,"topics":["anthropic","chatgpt","claude","claude-code","codex","desktop-widget","floating-widget","gdi","openai","rate-limit","rust","tray-icon","usage-monitor","win32","windows"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tiennm99.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-05-15T23:58:25.000Z","updated_at":"2026-05-18T06:23:36.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/tiennm99/claude-code-usage-bubble","commit_stats":null,"previous_names":["tiennm99/claude-code-usage-bubble"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/tiennm99/claude-code-usage-bubble","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiennm99%2Fclaude-code-usage-bubble","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiennm99%2Fclaude-code-usage-bubble/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiennm99%2Fclaude-code-usage-bubble/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiennm99%2Fclaude-code-usage-bubble/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tiennm99","download_url":"https://codeload.github.com/tiennm99/claude-code-usage-bubble/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiennm99%2Fclaude-code-usage-bubble/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33386178,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T04:15:53.637Z","status":"ssl_error","status_checked_at":"2026-05-23T04:15:53.242Z","response_time":53,"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":["anthropic","chatgpt","claude","claude-code","codex","desktop-widget","floating-widget","gdi","openai","rate-limit","rust","tray-icon","usage-monitor","win32","windows"],"created_at":"2026-05-18T06:18:33.987Z","updated_at":"2026-05-23T07:12:16.609Z","avatar_url":"https://github.com/tiennm99.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Windows](https://img.shields.io/badge/platform-Windows-blue)\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\n# Claude Code Usage Bubble\n\nA floating, draggable circular bubble that shows your Claude Code and/or\nCodex usage on Windows — inspired by the floating \"memory boost ball\" UX\nof 360 Security and IObit Advanced SystemCare.\n\nDrop it anywhere on screen, drag it around, snap it to a monitor edge,\nleft-click for a panel with both your 5-hour and 7-day windows, right-click\nfor the menu.\n\n## Acknowledgements\n\nInspired by [CodeZeno/Claude-Code-Usage-Monitor](https://github.com/CodeZeno/Claude-Code-Usage-Monitor),\nwhich solves the same \"how close am I to the Claude Code limit?\" problem\nwith a horizontal taskbar widget. This project takes the UX in a different\ndirection — a floating, draggable circular bubble that the user can place\nanywhere on screen — and is a clean-room implementation: the HTTP client,\nprovider polling, credential discovery, localisation, tray rendering, and\nself-updater are all written from scratch against the same public APIs\n(Anthropic, ChatGPT, GitHub Releases).\n\n## What you get\n\n- A circular floating bubble showing your current 5-hour Claude Code or\n  Codex usage as a percentage and a colored progress ring\n- Drag anywhere — the bubble snaps to monitor work-area edges when\n  released\n- Resize with `Ctrl + MouseWheel` on the bubble (32–128 pixels)\n- Left-click the bubble for an expanded panel with both **5h** and **7d**\n  bars plus reset countdowns\n- Right-click for refresh, displayed models, update frequency, language,\n  startup, updates, exit\n- Optional system tray icons (one per enabled model)\n- Auto-hide when a fullscreen app is in the foreground (games, video,\n  presentations) — reappears when you leave fullscreen\n\n## Who this is for\n\nWindows 10/11 users who already have **Claude Code (CLI or App) installed\nand signed in**. Codex support is optional — install and sign in to the\nCodex CLI, then enable Codex from the right-click **Models** menu.\n\nIf you use Claude Code through WSL, that is supported too. The monitor\ncan read your Claude Code credentials from Windows or from your WSL\nenvironment.\n\n## Requirements\n\n- Windows 10 or Windows 11\n- Claude Code (CLI or App) installed and authenticated\n- Optional: Codex CLI installed and authenticated, if you want Codex usage\n\n## Install\n\n### Download the latest release\n\nGrab `claude-code-usage-bubble.exe` from the\n[Releases page](https://github.com/tiennm99/claude-code-usage-bubble/releases/latest).\nPut it anywhere on disk (e.g. `%LOCALAPPDATA%\\ClaudeCodeUsageBubble\\`) and\nrun it. The app self-updates from the same Releases feed.\n\n**First-run note:** the binary is unsigned, so SmartScreen will show\n\"Windows protected your PC\". Click **More info** → **Run anyway**. Code\nsigning is on the roadmap.\n\n### Build from source\n\n```powershell\ngit clone https://github.com/tiennm99/claude-code-usage-bubble\ncd claude-code-usage-bubble\ncargo build --release\n```\n\nThe binary lands at `target/release/claude-code-usage-bubble.exe`.\n\n## Use\n\nRun `claude-code-usage-bubble.exe`. The bubble appears near the bottom-right\ncorner of your primary monitor on first launch. Drag it where you want it,\nrelease to snap to the nearest edge if you let go close to one.\n\n- **Left-click** the bubble to open the expanded panel (5h + 7d + countdowns)\n- **Right-click** for refresh, models, refresh frequency, language, \"Start\n  with Windows\", auto-update check (Disabled / Hourly / Daily / Weekly),\n  manual \"Check for updates\", exit\n- **Drag** anywhere — it floats on top of all other windows\n- **Ctrl + MouseWheel** on the bubble to resize it\n- **Tray icon** (if enabled): left-click toggles the bubble visibility,\n  right-click opens the same menu\n\n### Models\n\nUse the right-click **Models** menu to choose what is shown:\n\n- **Claude Code** is enabled by default\n- **Codex** can be enabled alongside Claude Code or shown by itself\n\nWhen both models are shown, each gets its own bubble that you can position\nindependently.\n\n## Diagnostics\n\n```powershell\nclaude-code-usage-bubble.exe --diagnose\n```\n\nThis writes a log file to:\n\n```text\n%TEMP%\\claude-code-usage-bubble.log\n```\n\nSettings are saved to:\n\n```text\n%APPDATA%\\ClaudeCodeUsageBubble\\settings.json\n```\n\n## Privacy and security\n\nWhat the app reads:\n\n- Your local Claude Code OAuth credentials from `~/.claude/.credentials.json`\n- If needed, the same credentials file inside an installed WSL distro\n- If Codex is enabled, your local Codex credentials from `$CODEX_HOME/auth.json`\n  or `~/.codex/auth.json`\n\nWhat the app sends over the network:\n\n- Requests to Anthropic's Claude endpoints to read your usage\n- Requests to ChatGPT's Codex usage endpoint, if Codex is enabled\n- Requests to GitHub only if you use the app's update-check feature\n\nWhat the app stores locally:\n\n- Bubble position(s) per model\n- Bubble size\n- Polling frequency\n- Language preference\n- Last update check time\n- Displayed model preferences\n\nWhat it does **not** do: send credentials to any third-party server, run a\nbackend service, collect analytics, upload your project files, or write to\nyour Codex `auth.json` directly.\n\n## License\n\nApache License 2.0 — see [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiennm99%2Fclaude-code-usage-bubble","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiennm99%2Fclaude-code-usage-bubble","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiennm99%2Fclaude-code-usage-bubble/lists"}