Skip to content

About

Local-first desktop widget for tracking usage, quotas and reset times across Cursor, Codex, Claude Code, Copilot CLI, Devin and Antigravity. No telemetry.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

AI Tools Usage Tracker

CI License

One local-first desktop widget for your AI coding usage, quotas, and reset times.

Track Cursor, Codex, Claude Code, GitHub Copilot CLI, Devin, and Antigravity across macOS, Windows, and Linux. No telemetry. Existing credentials are never copied into or stored by the tracker.

AI Tools Usage Tracker showing synthetic Cursor, Claude Code, and Codex quota data

The real application rendered in its offline synthetic demo mode. No provider was accessed.

If this saves you from checking six different usage screens, star the repository and request the provider you want supported next.

Quick start · Supported providers · Privacy model · Project status

Source preview: the source is ready for review and compatibility testing. Public binary downloads are not available while signing, notarization, and release-supply-chain work is completed.

Why this exists

Every AI coding tool reports usage differently. Some expose rolling quota windows, some show spend, and others provide only local counters or cached credits. Checking several dashboards interrupts the work those tools are meant to accelerate.

AI Tools Usage Tracker brings the available signals into one compact, always-on-top view without sending your activity to another analytics service.

Who is this for?

  • Developers using several AI coding assistants.
  • Teams comparing quotas across subscriptions.
  • Heavy AI-tool users who regularly hit rolling limits.
  • Privacy-conscious users who do not want another hosted analytics dashboard.

What it gives you

  • One dashboard for multiple AI coding tools.
  • Usage, remaining allowance, and reset times where the provider exposes them.
  • Clear Live, Local, Cached, and Unavailable states.
  • A single-row compact mode sized to the enabled providers.
  • Explicit permission controls for each provider.
  • Local normalized snapshots only—never raw provider responses.
  • No telemetry, analytics, remote configuration, or automatic updates.

Supported providers

Provider What the tracker can show Availability
Cursor Spend, Total/Auto/API usage, reset time Live, experimental
Codex Rolling quota usage and reset times Live
Claude Code Account limits or session context Live via Claude Code status line
GitHub Copilot CLI AI credits consumed on this device Local
Devin Daily, weekly, and included usage Cached
Antigravity Remaining AI credits Cached

Every provider is off until you explicitly enable it.

Technical data sources and important limitations
Provider Exact source Important limitation
Cursor Cursor's pinned desktop usage RPC Undocumented private interface; reads one existing access token only after explicit opt-in
Codex Official local codex app-server process The app-server interface is documented as experimental
Claude Code Official status-line payload Requires Claude Code; Claude Desktop Chat and free Claude.ai accounts do not expose this source
GitHub Copilot CLI Aggregate numeric values in the local CLI event database Shows usage generated on this device, not the remaining account allowance
Devin Exact normalized plan record in Devin's local cache The cache schema is undocumented and can change
Antigravity Exact model-credit record in Antigravity's local cache The cache schema is undocumented and can change

Local cache cards are marked Cached after 30 minutes. Private or undocumented interfaces are experimental, default-disabled, strictly parsed, and designed to fail closed.

Quick start

Requirements

  • Python 3.11 or newer
  • Tk support

macOS

git clone https://github.com/mohitkale/ai-tools-usage-tracker.git
cd ai-tools-usage-tracker
python3 scripts/usage_widget.py

This command runs the source version for the current session. It does not build an app bundle, install the app, or add it to Login Items.

If a Homebrew Python installation does not include Tk, install the matching python-tk@<version> formula.

Build, install, and start automatically on macOS

Create the app bundle and copy it to a stable location:

python3 -m venv .venv
.venv/bin/python -m pip install -r requirements-build.txt
.venv/bin/python scripts/build_app.py
ditto "dist/AI Usage Tracker.app" "/Applications/AI Usage Tracker.app"

Quit the running app before replacing its installed bundle.

Register the installed bundle as a macOS Login Item:

osascript \
  -e 'tell application "System Events"' \
  -e 'try' \
  -e 'delete login item "AI Usage Tracker"' \
  -e 'end try' \
  -e 'make login item at end with properties {path:"/Applications/AI Usage Tracker.app", hidden:false}' \
  -e 'end tell'

Launch the installed copy immediately with:

open "/Applications/AI Usage Tracker.app"

macOS may ask Terminal for permission to manage Login Items. You can verify the entry under System Settings → General → Login Items.

The Login Item stores an absolute path. Future builds in dist/ do not automatically replace the installed copy. After rebuilding, run the ditto command again; because the Login Item continues to point to the same /Applications/AI Usage Tracker.app path, it does not need to be registered again.

To remove automatic startup:

osascript -e 'tell application "System Events" to delete login item "AI Usage Tracker"'

Windows

git clone https://github.com/mohitkale/ai-tools-usage-tracker.git
cd ai-tools-usage-tracker
py scripts\usage_widget.py

The official Python installers for Windows normally include Tk.

Ubuntu

sudo apt install python3-tk
git clone https://github.com/mohitkale/ai-tools-usage-tracker.git
cd ai-tools-usage-tracker
python3 scripts/usage_widget.py

The first launch connects to nothing. Open Settings, review the permission requested by each provider, and enable only the tools you want to track.

Try it without connecting anything

python3 scripts/usage_widget.py --demo

Demo mode renders synthetic in-memory data. It cannot read provider files, start provider processes, use the network, or save settings.

Explicit permissions

Every provider is disabled by default. The Settings screen explains the exact files, processes, or network access requested before a provider is enabled.

Provider settings explaining the access requested by each integration

Detailed and compact modes

Use the minus button to switch to a draggable single-row provider strip; use plus to restore the detailed view. Compact mode keeps only provider balances, expand, and close controls visible. Its width adapts to the enabled providers. The main widget uses the same frameless behavior on macOS, Windows, and Linux.

Compact AI Tools Usage Tracker window showing remaining Cursor, Claude Code, and Codex allowance

The walkthrough below moves from the detailed dashboard to compact mode and then to the explicit provider-permission screen.

AI Tools Usage Tracker showing detailed usage, compact mode, and explicit provider permissions with synthetic data

Privacy by design

Privacy architecture from installed AI tools through permission-controlled adapters and normalized local storage to the desktop widget

  • All providers are default-deny.
  • Permissions are scoped per provider; enabling one grants nothing to another.
  • The tracker does not enumerate an operating-system keychain, credential manager, browser storage, or home directory.
  • Existing provider credentials are never copied into tracker settings.
  • Raw provider payloads are ephemeral and never stored.
  • Network destinations are adapter-specific allowlists; cross-host redirects are rejected.
  • Logs and errors are tested against synthetic credential canaries.

Read SECURITY.md, the threat model, and the widget data-flow documentation for the complete contract.

Project status

Area Status
Source publication Ready
macOS, Windows, and Ubuntu test suites Passing in CI
Windows and Ubuntu packaged smoke tests Passing in CI
macOS tester DMG Available to build locally; ad-hoc signed
Public binary release Blocked on signing, notarization, and remaining supply-chain gates

The current version is intended for source-based compatibility testing. Do not redistribute CI bundles or local tester builds as official releases. See the release-readiness audit and roadmap.

Contributing

Bug reports, documentation improvements, platform testing, and carefully scoped provider work are welcome. Start with CONTRIBUTING.md and read the security rules before proposing a provider integration.

Independent project

AI Tools Usage Tracker is an independent open-source project. It is not affiliated with, endorsed by, or sponsored by Cursor, OpenAI, Anthropic, GitHub, Devin, or Google. Provider names are used only for compatibility identification. See the trademark policy.

Technical documentation

License

The project source is licensed under the Apache License 2.0. Dependency and redistribution notices are in THIRD_PARTY_NOTICES.md.

About

Local-first desktop widget for tracking usage, quotas and reset times across Cursor, Codex, Claude Code, Copilot CLI, Devin and Antigravity. No telemetry.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages