SuperAPI AI Directory

onwatch

onWatch is a free and open-source AI API quota monitoring tool for developers to track usage and quotas across multiple AI services in real time. It supports platforms such as Synthetic, Z.ai, Anthropic (Claude Code), Codex, GitHub Copilot, MiniMax, Gemini CLI (legacy), Cursor, Grok, Kimi Code, Antigravity, Moonshot, DeepSeek, OpenCode Go, Mistral, Ollama Cloud, Muse, Command Code, and more, consolidating otherwise scattered usage data into one place and providing history, alerts, and a local web dashboard to help users stay informed before hitting rate limits or exceeding budgets. onWatch runs as a lightweight background daemon, using less than 50MB of memory when polling all providers in parallel, stores historical data in SQLite, and provides a Material Design 3-style dashboard with dark/light mode support. It has zero telemetry, is a single binary, and keeps all data on the user's local machine. It also offers a VS Code extension, a menu bar/system tray companion, email, push, and Webhook notifications, as well as local JSONL data ingestion for custom API workflows.

Open website

About this tool

onWatch is a free, open-source AI API quota monitoring tool designed to fill the gap between a "current usage snapshot" and the "cycle-based, cross-session historical view" that developers actually need. It consolidates usage from multiple AI providers into one place, letting users review history, receive alerts, and open a local web dashboard before hitting rate limits or exceeding budgets. The project is provided by onllm.dev and is currently in Beta; features and APIs may change as development continues.

Key Capabilities

onWatch tracks quotas in real time for the following providers: Synthetic, Z.ai, Anthropic (Claude Code), Codex, GitHub Copilot, MiniMax, Gemini CLI (legacy), Cursor, Grok, Kimi Code, Antigravity, as well as balance- or subscription-metered services such as Moonshot, DeepSeek, OpenCode Go, Mistral (beta), Ollama Cloud (beta), Muse, and Command Code. It also supports ingesting local JSONL telemetry data from custom API-driven workflows via API Integrations to track token usage and cost.

The dashboard uses a Material Design 3 style, supports dark/light mode (automatically detecting system preference), and displays a corresponding tab for each configured provider. Each quota card shows: a progress bar comparing usage against the limit, a reset countdown, a status badge (healthy/warning/danger/critical), consumption rate, and projected usage. Other features include: Chart.js area chart time series (1h/6h/24h/7d/30d), a dedicated telemetry view for API Integrations, Insights (burn rate projections, billing cycle averages, usage variance, trend detection, cross-quota ratio analysis), Cycle Overview (cross-quota correlation table), Sessions (creating a session for each agent run and tracking peak consumption), and a Settings page.

It also provides a Prometheus metrics endpoint (Beta, optionally protected with a Bearer Token), an installable PWA, a menu bar/system tray companion (macOS, Linux, Windows, Beta), a VS Code extension, and email (SMTP), browser push (Web Push/VAPID), and Webhook (can be used with ntfy, Gotify, etc.) notifications. SMTP passwords are stored encrypted with AES-GCM, and Webhook payloads contain no credentials.

How to Use

onWatch runs as a lightweight background daemon, using less than 50MB of memory when polling all providers in parallel, stores historical data in SQLite, and the dashboard by default runs at http://localhost:9211 Provided, log in using the credentials configured in .env.

Installation methods include: a one-line install script (on Linux/macOS it downloads the binary to ~/.onwatch/, creates .env, sets up a systemd service or launchd agent, and adds it to PATH; on Windows use the PowerShell one-line install or install.bat), Homebrew (macOS and Linux), downloading the binary from the Releases page (supports macOS ARM64/AMD64, Linux AMD64/ARM64, Windows AMD64/ARM64), building from source (requires Go 1.25+), Docker (with a distroless base image of about 10-12 MB, runs as non-root, data persisted through the /data volume), and app.sh.

During configuration, edit ~/.onwatch/.env (or the .env in the project directory when building from source). At least one provider key is required, and any combination can be tracked in parallel. The Anthropic token is automatically detected from Claude Code credentials (macOS Keychain, Linux keyring, or ~/.claude/.credentials.json); when using only Codex, set CODEX_TOKEN, and at runtime it will re-read ~/.codex/auth.json (or CODEX_HOME/auth.json); Copilot requires a GitHub Personal Access Token (classic) with the copilot scope. Official setup guides are also provided for Windows, Codex, Copilot, MiniMax, Antigravity, Cursor, API Integration, and more.

The VS Code extension is published on the VS Code Marketplace (onllm-dev.onwatch). It is a lightweight client for the daemon, automatically discovers a running onWatch, shows the most constrained quota in the status bar (with reset time when critical), displays per-provider details on hover, and opens a quick view or the full dashboard when clicked. Each GitHub release also includes onwatch-vscode-<version>.vsix.

The menu bar/tray companion includes two preset views: Standard (provider cards with circular quota gauges and reset information) and Detailed (expanded cards, mini trend lines, and full quota details). You can configure displayed items, order, refresh, and thresholds in Settings > Menubar.

Use Cases

onWatch is suitable for developers and toolchains using the API keys of any of the providers above, including Cline, Roo Code, Kilo Code, Claude Code, Codex CLI, Cursor, GitHub Copilot, MiniMax Coding Plan, Grok CLI, Antigravity, and more. Typical uses are viewing historical usage across sessions and by period, setting threshold alerts, avoiding rate limits or budget overruns, and comparing consumption across different work phases.

Limitations

The project is currently in Beta, and features and APIs may change. No pricing, cost, or paid tier information is mentioned in this text. Muse tracking is disabled by default because each poll consumes one prompt from the user's own 5-hour window, so MUSE_ENABLED=true must be set to enable it explicitly. Gemini CLI is a legacy path; Google's Gemini CLI has been replaced by Antigravity, and new installations are advised to use the agy data source of the Antigravity provider. Codex multi-account support, the automatic quota launcher, and some other features are marked as Beta.