AI Usage Dashboard
See AI coding quotas before they interrupt your work.
AI Usage Dashboard brings source-visible quotas, credits, reset times, spending, usage history, and sync health into one Chrome extension. Check a compact toolbar popup, work from the side panel, or open the full dashboard without sending provider data to a project-owned server.
Install from the Chrome Web Store · Download a GitHub build · Read the user documentation
Version 0.2.3 is available on GitHub with the provider insights and optional community notifications described below. The Chrome Web Store still serves 0.2.2; the exact 0.2.3 tag package and updated listing copy were submitted for review on October 16, 2026. Submission is not public availability.
Current extension UI with illustrative QA values. No real accounts or credentials are included.
Built For Daily Checks
- Quotas and resets: compare source-visible usage windows and see when they reset without reopening each provider dashboard.
- Spend and API usage: keep credits, actual spend, request counts, tokens, and returned limits close to the coding workflow.
- History with context: scan normalized daily trends where the source exposes them, while keeping raw page and request bodies out of extension storage.
- Actionable sync health: distinguish fresh data, retained last-successful data, missing access, partial contracts, and unsupported values.
- Optional follow-through: set quota/reset alerts, inspect a sanitized diagnostic report, and export supported aggregate usage as CSV.
- A surface for the moment: use a collapsible list, single-card switcher, auto-gliding popup, side panel, or full-page dashboard.
See It In Action
The short loop shows the real toolbar popup moving from personal quota windows to Codex history and a Sub2API usage summary. The full-page dashboard and side panel use the same normalized provider state.
Get Started
- Install the extension from the Chrome Web Store.
- Open the toolbar popup and choose Settings.
- Open Accounts & Connections to enable only the providers you use.
- Grant optional host access or add an API credential only when that source requires it.
- Return to the popup, side panel, or full-page dashboard for daily checks.
Chrome Web Store installation is recommended for normal use. The GitHub release also contains a Chrome zip for developer-mode loading and an unsigned Firefox local-beta package.
Designed For Real Browser Work
- Exact, partial, window-scoped, policy-only, stale, and unavailable values are presented differently. The extension does not invent a balance that the source does not expose.
- Responsive Material-style layouts, light/dark/system/time themes, RTL support, and 14 interface locales are checked by an automated visual matrix.
- Provider order, visible modules, popup browsing, progress appearance, toolbar badges, reset-time formatting, motion, colors, and gradients remain under the user's control.
Supported Sources
| Provider | Available source path | What the dashboard can show |
|---|---|---|
| Codex | Enterprise analytics, signed-in Codex usage page, or opt-in same-machine CLI Companion | Source-visible usage windows, reset times, credits, and normalized history. Conditional API-equivalent estimates are not subscription charges. No plan-wide absolute balance is invented. |
| Claude | Signed-in Claude Personal usage page or Claude Code Analytics Admin API | Personal Pro usage windows and credit state, or separate organization analytics. |
| Cursor | Team Admin API or signed-in Usage/Spending pages | Team/API data or normalized personal billing pools, On-Demand charges, and aggregate history. |
| Sub2API | User-configured deployment and API key | Key-scoped balance, spend, requests, tokens, trends, models, and returned limits through the bounded GET /v1/usage contract. |
| Gemini Code Assist | Documented quota policy | Policy-only information in this release. |
| JetBrains AI | Retained implementation path | Deferred from the active release promise until organization-visible usage evidence is reverified. |
The extension is not an official product from OpenAI, Anthropic, Cursor, Google, JetBrains, or any other provider.
Privacy First
AI Usage Dashboard is deliberately conservative:
- You are never asked to paste cookies or raw browser authorization headers.
- Optional host permissions are requested only for the provider origins or custom endpoints you choose to connect.
- Optional API credentials stay in account-isolated extension-local storage and are sent only to the configured origin.
- Codex personal sync keeps its short-lived ChatGPT token in
chrome.storage.session; it is not added to AppState, Chrome Sync, backups, logs, or fixtures. - History capture stores only bounded normalized aggregates. Raw responses, page body text, cookies, request headers, and direct account identifiers are not retained.
- Custom HTTP/HTTPS JSON sources omit browser credentials, validate a public schema, and never render or save the raw response body.
- The extension does not load or execute remote code.
Read the full privacy policy and security policy before connecting a provider or custom endpoint.
Personalize The Dashboard
- Settings starts with Accounts & Connections, followed by Usage & Notifications, Appearance & Display, General, and Data & Backup. Wide pages use a category rail; narrow pages use a dropdown. Only the selected category is shown, while connection drafts and category scroll positions remain.
- Usage & Notifications groups sync interval, in-app warning and optional system notifications. Data & Backup owns JSON and Chrome Sync operations; Appearance & Display owns colors, motion, popup browsing and display controls. The in-app warning and notification trigger percentages are independent. Notifications use a compact Off / On / Paused selector; account and threshold options appear when enabled.
- Choose traditional remaining-percentage bands or an editable one-dimensional gradient shared by popup, side panel, full-page, detail, and preview surfaces.
- Generate a gradient locally from a PNG, JPEG, or WebP image. Only the derived color stops are saved; the image and its metadata are not uploaded or stored.
- Set motion to Default, Follow system, More, or Reduced. Default and More play even when the operating system requests reduced motion; Follow system honors that preference. Existing choices and backups retain their meaning.
- Format quota resets as localized date and time, weekday and time, or both.
- Enable the default-off quota pace estimate in Provider detail for fresh, fixed-duration windows. It is a local presentation estimate, not source data.
Unified Interface In 0.2.2
Settings keeps the existing customization options, with separate editing targets for Popup, Sidebar and Full Page. Ordinary preferences report confirmed saves and retain failed changes for retry.
Navigation, menus, expandable settings, save feedback and Provider changes share the same motion profile across Settings, Dashboard, Sidebar, detail and Popup. More adds short grouped entrances and stronger interaction feedback. Quota labels and accessible values update immediately; stale, unknown, failed or reset data is not animated as a numeric progression. Backgrounded transitions settle, and idle pages do not play decorative loops.
The Dashboard and Sidebar have operational summaries and responsive Provider lists. This screenshot uses synthetic values, not a live account.
Provider detail groups quota and reset, trends, comparison and export, and technical source information. Successful capture time and recovery actions stay visible when technical information is collapsed.
The native toolbar Popup uses the same visual language while keeping its four browsing modes, saved appearance and compact dimensions.
The 0.2.2 interface shown with synthetic QA data, not live account usage. The 0.2.1 Settings image is retained as historical material. Store review and rollout are tracked separately.
Provider Insights In 0.2.3
Source version 0.2.3 adds source-scoped reset credits and balances, separate Cursor model pools, optional usage composition and default-off community reset context. Usage & Notifications keeps community reports and verified account-card alerts separate; predictions are detail-only, never personal quota or an alert. The public feed does not require an account connection. Account-card notifications require a fresh, verified same-account source; pairing alone is not sufficient. Community access and both new notification subscriptions start off. These additions are not included in the published 0.2.2 Store package.
The compact Popup keeps source credit and community/account boundaries visible, with exact collection times available in a tooltip. Wide settings pages align the two optional notification selectors; an explanation accompanies unavailable account-card alerts. These captures use synthetic data, not live accounts.
Extend It
Custom JSON Sources
Add client-provided HTTP or HTTPS quota endpoints that implement the public
ai-usage-dashboard.custom-source.v1 schema. Custom data is always labeled as
custom and never treated as an official provider result. See the
JSON contract and examples.
API Gateways And Local Tools
- Sub2API usage contract
- Experimental Local Companion Bridge
- Optional CodexBar dashboard adoption boundary
Local companions are never installed, started, discovered, or updated by the extension. Generic accepted local rows remain separate custom sources. The extension includes an opt-in, same-machine Codex CLI bridge for the built-in Codex Personal quota. After manual pairing, local-only mode can replace browser-page quota refreshes with local quota reads. API-equivalent estimates appear only after sufficient complete, priced observations; they are not subscription charges or balances. See the bridge contract for setup, limits, and privacy boundaries. Store availability may lag the source release during review.
Manual Installation
npm install npm run build
Open chrome://extensions, enable Developer mode, choose Load unpacked,
and select dist/chrome/.
Documentation
- Documentation entry point
- Provider setup and display contract
- Provider authoring guide
- Chrome Web Store listing copy
- Contributing guide
Development
Requirements: Node.js >=22.12.0 and npm.
npm run dev
npm run test
npm run typecheck
npm run build
npm run release:checkThe default build writes the Chrome extension to dist/chrome/. Firefox local
beta output is written to dist/firefox/; use npm run firefox:build,
npm run firefox:lint:baseline, and npm run firefox:package for that path.
Pull requests targeting main run read-only quality checks and build temporary
Chrome and Firefox artifacts, without publishing. Pushes to main also run
these checks. Version tags create a GitHub Release with separately named
browser packages and SHA-256 checksums. Store API credentials, when configured,
allow a tag workflow to upload the Chrome package and submit it for review.
See GitHub release and notes rules.
In short, each version tag produces a GitHub Release with Chrome and Firefox package zips plus
SHA256SUMS.txt.
Current Release State
- The Chrome Web Store listing
displays
0.2.2, verified on 2026-10-16. The authenticated Store API reports manifest0.2.2.0asPUBLISHEDat 100%, with0.2.3.0pending review. - Source package version:
0.2.3; Chrome manifest version:0.2.3.0. - GitHub Release
v0.2.3is stable and provides verified Chrome and unsigned Firefox local-beta packages plusSHA256SUMS.txt. Its tag workflow and downloaded hashes passed on 2026-10-16 UTC. - On 2026-10-16 UTC, the authenticated Store API confirmed
0.2.3.0asPENDING_REVIEWat 100%, with automatic publication after approval selected. The published 0.2.2 package remains the Store baseline until approval and rollout. - Publication status is tracked in the Chrome Web Store milestone.
Generated packages, hashes, upload receipts, and personal submission evidence remain outside the public repository.
Contributors
- donaldpeng17 - fixed a Claude Code personal-user dashboard issue in #1.
Contributions are welcome. Please keep provider claims conservative and preserve the project's privacy boundaries.
License
AI Usage Dashboard is licensed under the GNU Affero General Public License v3.0 only.








