September 11, 2026 · By YasKad
nguyenphutrong/quotio

Quotio: a native macOS dashboard for managing your AI subscriptions

nguyenphutrong/quotio · 4,872★ · 325 forks

A native macOS dashboard that centralizes several AI subscriptions: it unifies Claude, Gemini, OpenAI, Qwen, and Antigravity accounts, watches their quotas in real time, and configures CLI coding agents (Claude Code, OpenCode, Codex, Droid) behind a local proxy. As of September 4, 2026 it carries 4,830 stars.

Disambiguation note: this report covers Quotio (the macOS menu bar app, domain quotio.dev, author nguyenphutrong). Don’t confuse it with Quotion (quotion.co), an unrelated 2023 product that converts Apple Notes into blogs and frequently surfaces in Hacker News searches.

What Quotio is

Quotio is a native macOS app (Swift/SwiftUI) that lives in the menu bar and acts as a “command center” for AI coding assistants. Technically, it describes itself as an interface for CLIProxyAPI: a local proxy that exposes subscribed accounts (Claude, Codex, Qwen, Vertex, iFlow, Antigravity, Kiro, GitHub Copilot) as an OpenAI/Gemini/Claude-compatible API, so any command-line agent can use them.

The core product isn’t the proxy itself — that’s an external binary Quotio downloads and orchestrates — but the visual management layer: seeing every account’s usage and quota in one place, automatically switching to a backup account when the primary one fails or runs out, and routing CLI agents to that proxy with a single click.

The README and official site (quotio.dev) summarize the verifiable capabilities: multi-provider support, a standalone quota mode (view usage without starting the proxy), one-click agent configuration, a real-time dashboard (traffic, tokens, success rate), API key management, menu bar integration, notifications, Sparkle-based auto-update, and English, Vietnamese, and Simplified Chinese localization.

Origin

The repository was created on December 24, 2025 by developer nguyenphutrong (full name not confirmed in the sources consulted; the account publishes a README in Vietnamese and university projects in Vietnamese, indicating a native Vietnamese-speaking developer). The first release (v0.0.1) shipped on December 25, 2025, just a day after creation.

The starting point is a dependency: Quotio was born as a graphical layer over router-for-me/CLIProxyAPI (≈50,000 stars, in Go), the proxy that wraps AI subscriptions to expose them as an API. The README itself states that Quotio “helps manage multiple AI accounts, track quotas, and configure CLI tools in one place,” and that the CLIProxyAPI binary is downloaded automatically on first launch.

The development story is marked by an architectural tension the author raised publicly: in discussion #424 (June 29, 2026) nguyenphutrong proposes dropping the dependency on CLIProxyAPI as the core. His argument is that Quotio is “downstream” of the proxy: the interface can support a flow before the proxy supports it, the proxy’s behavior changes and Quotio has to react afterward, and internal proxy bugs can’t be fully fixed “unless you fork it or add another layer.” That discussion remains open and explains why the recent evolution (a proxy architecture refactor in v0.29.1, August 23, 2026) touches the heart of that dependency.

Philosophy and principles

The sources don’t contain an explicit manifesto, but the emerging principles from the README, docs, and release cadence are verifiable:

  • One place for several accounts: the premise (“Stop juggling AI accounts”) is centralizing accounts that, by default, each AI tool manages separately.
  • Fault-tolerant switching (failover): the automatic account-switching logic — with Round Robin and Fill First strategies — is the product’s core; the stated goal is not interrupting “vibe coding” when an account runs out or enters cooldown.
  • Three usage modes: Full Mode (OAuth + agents through the proxy), Quota-Only Mode (reading existing auth files without starting the proxy), and the idea of a standalone quota mode for quick checks.
  • Native and lightweight on macOS: a SwiftUI menu bar app, not a web wrapper; with auto-update (Sparkle) and Apple signing/notarization since v0.26.0.
  • Explicit, honest dependency: it doesn’t hide that it relies on CLIProxyAPI; it discusses this in the community and plans to decouple it.

How it works

The basic flow documented in the README, site, and docs has these pieces:

  1. Local proxy server. Pressing Start in the dashboard initializes the local proxy (the CLIProxyAPI binary downloaded on first launch) and listens on a configurable port.
  2. Accounts / providers. In the Providers tab, each provider is authenticated via OAuth (Claude, Codex, Qwen, iFlow, Antigravity, Kiro, GitHub Copilot) or credential import (Vertex AI with a service account JSON). Each account’s quota is tracked and shown in the menu bar.
  3. Agents. In the Agents tab, installed CLI agents (Claude Code, Codex CLI, Amp CLI, OpenCode, Factory Droid; the site adds Gemini CLI) are detected and configured to route their traffic through the proxy, in automatic or manual mode.
  4. Dashboard and quota. The Dashboard shows overall health and traffic; Quota shows the per-account breakdown; Logs provides raw request/response logs for debugging.
  5. Switching and keys. The switching strategy (Round Robin / Fill First) decides which account each request goes to, and API key management lets you generate and administer keys for the local proxy.

A detailed dark-mode macOS menu bar interface showing a real-time quota dashboard for multiple AI accounts, with glowing circular gauges for usage, remaining quota, rate limits, and cooldown status in cyan, blue, purple, and green neon, provider icons arranged in a grid, and status dots indicating connected, idle, low quota, or failed states

The Cursor, Trae, and Windsurf IDEs appear as “monitoring only”: they’re detected and their quotas are shown, but they can’t be used as proxy providers (an explicit warning in the README and docs).

A futuristic local proxy architecture visualization on a macOS desktop, a glowing proxy node at the center of a dark circuit-board-like layout, receiving requests from multiple AI account sources and routing them to command-line agents, with neon data streams branching from the proxy into terminal windows in smooth curved paths

Quick-start guide

Installation and first boot

Requirements: macOS and an internet connection for the OAuth flow. There’s a documented discrepancy in the minimum version: the README states macOS 14.0 (Sonoma) or later, while the website’s installation page and docs state macOS 15.0 (Sequoia) or later, Apple Silicon only (M1/M2/M3/M4). Both texts should be taken into account.

  • Homebrew (recommended by the README):
    brew tap nguyenphutrong/tap
    brew install --cask quotio
  • Manual download: grab the latest .dmg from the Releases page and drag it into Applications.
  • Build from source:
    git clone https://github.com/nguyenphutrong/quotio.git
    cd Quotio
    open Quotio.xcodeproj   # choose the "Quotio" scheme and press Cmd+R

On first launch, Quotio automatically downloads the CLIProxyAPI binary. If your install is one of the older unsigned versions (≤v0.25.0) and macOS blocks the app, the docs say to run:

xattr -cr /Applications/Quotio.app

Since v0.26.0 (August 13, 2026), the app is signed with a Developer ID and notarized by Apple, so that exception shouldn’t be necessary. The website’s installation page still warns that the app is “not yet signed,” text that turns out to be outdated relative to the release notes and RELEASE.md.

A close-up cyberpunk developer scene showing several command-line coding agents being configured with one click to route through a local proxy, terminal windows with glowing command prompts, environment variables, and overlapping configuration snippets, each connected by a thin neon line to a central macOS menu bar icon, with a green checkmark on one window showing a successful connection

Common workflows

  • To install and boot in Full Mode: brew tap nguyenphutrong/tap && brew install --cask quotio; open Quotio, complete the wizard choosing Full Mode (recommended for most people), and let it download the proxy. Result: the icon appears in the menu bar.
  • To add a provider: Quotio’s menu bar icon → Open App (⌘O) → Providers tab → Add Provider button (+) → pick the provider (Claude, Codex, OpenAI, etc.) → follow the OAuth flow or import credentials. Result: that account’s quota is instantly visible in the menu bar dropdown.
  • To route a CLI agent: Agents tab → select the installed agent (Claude Code, OpenCode, Codex CLI…) → Configure → choose Automatic or Manual. Result: the agent uses the local proxy; from then on, the CLI is used “as usual” and traffic flows through Quotio.
  • To change the switching strategy or just view quotas: in Settings, switch Routing Strategy between Round Robin and Fill First; or select Quota-Only Mode to track quotas from existing auth files without starting the proxy.

A dramatic image explaining automatic failover switching between multiple AI accounts, a primary account card glowing brightly but showing a low-quota warning, while a backup account card activates with a surge of cyan and violet energy, neon routing paths splitting and merging around a central proxy core

Essential configuration

  • Port: the local proxy’s listening port.
  • Routing Strategy: the switching policy, Round Robin or Fill First.
  • Auto-start: launch the proxy automatically when Quotio opens.
  • Notifications: toggle alerts for low quota, account cooldown periods, and service incidents.
  • Usage mode (Full vs. Quota-Only): decides whether the proxy starts with agents or only the auth files are read to show quota.

A secure macOS credential management scene featuring OAuth provider cards and API key tokens for multiple AI services, floating glass cards displaying abstract authentication badges, provider icons, and status labels such as connected, expired, or pending, arranged around a central encrypted vault icon

A lightweight quota-only monitoring concept shown as a macOS menu bar app reading authentication files without starting a local proxy, a soft scanning beam extends from the menu bar icon toward a folder of local auth files, extracting quota snapshots displayed as clean circular charts and usage bars, the proxy node present but dimmed to indicate it's inactive, in muted blues and subtle green accents

Common pitfalls and fixes

  • macOS blocks the app (unsigned versions ≤v0.25.0): run xattr -cr /Applications/Quotio.app. Since v0.26.0, signing/notarization prevents this.
  • Bundle identifier change: the first signed release migrated the identifier from dev.quotio.desktop to app.bytrong.quotio (documented in RELEASE.md and in v0.12.0). Old ad-hoc installs may need to install that release once manually and re-enable “Launch at Login” after the transition.
  • Quota shows “unknown” or the menu bar icon is missing: listed in the docs as common first-launch problems; resolved by completing OAuth, granting permissions, and verifying providers show a “Connected” (green) state.
  • Model Fallback shows only one model version, not per provider: user totally-tim reported this as a bug in discussion #150 (8 comments). Maintainer crossly clarified that Fallback is designed to switch between the same model type and is experimental, that the single-version behavior was a bug, and that the fix was to refresh the model cache after adding a new provider (linking to the guide in discussion #141). crossly invited totally-tim to try PR #169 and to join Discord.
  • Sandbox disabled and automatic proxy binary download: the security report in discussion #143 (author eovidiu) flags the app’s disabled App Sandbox (ENABLE_APP_SANDBOX = NO) with full client/server network access, Sparkle’s auto-update using an embedded Ed25519 key, and the CLIProxyAPI binary being downloaded from GitHub Releases on first launch — a supply-chain risk if the repository were compromised. The proposal to decouple the proxy (discussion #424) is the path the author himself is weighing.
  • Requirements divergence: read both the README (macOS 14.0+) and the website (macOS 15.0+, Apple Silicon only) before installing on an older or Intel Mac.

A security and supply-chain themed image for a native macOS AI management app, a shield icon surrounding a macOS app bundle, with layered visual elements representing Developer ID signing, Apple notarization, Sparkle auto-update, and a locally downloaded proxy binary, one layer showing a secure download pipeline with encrypted packet trails and a verification checkmark

Integrations and migration

Quotio is, by design, a graphical interface for router-for-me/CLIProxyAPI: anyone already using CLIProxyAPI from the command line can migrate by installing Quotio and letting it take over the proxy (the binary is managed automatically). The project connects with:

  • CLI agents: Claude Code, Codex CLI, Amp CLI, OpenCode, Factory Droid (and Gemini CLI per the site) via the Agents tab’s automatic configuration.
  • IDE monitoring: Cursor, Trae, and Windsurf (quota read-only).
  • Distribution: a Homebrew cask (nguyenphutrong/tap, updated automatically by CI on every stable release) and Sparkle-based auto-update (with a beta channel for alpha/beta/rc versions).
  • Community: a Discord referenced by maintainers in discussions; the cited link points to issue #138, which has been deleted, so a currently valid invite couldn’t be verified in this research.
  • Optional telemetry: RELEASE.md documents an optional PostHog token that can be embedded at build time.

The ecosystem

The underlying proxy and its environment

Quotio depends on an already-established ecosystem around router-for-me/CLIProxyAPI (≈50,289 stars, 7,664 forks, Go, MIT; created July 1, 2025), which wraps Antigravity, ChatGPT Codex, Claude Code, and Grok Build as an OpenAI/Gemini/Claude/Codex-compatible API service. That ecosystem is what gives Quotio meaning as a GUI:

  • router-for-me/EasyCLIProxyAPI: a desktop client (Rust, ≈1,826 stars) that CLIProxyAPI’s own README recommends as an interface with a GUI, system tray, and one-click start/stop. It’s the closest “official” competitor to the role Quotio occupies, but on a different stack (Rust, not native macOS Swift).
  • CLIProxyAPIPlus forks: kaitranntt/CLIProxyAPIPlus (≈240 stars, a fork maintained with daily syncing) and HsnSaboor/CLIProxyAPIPlus (≈83 stars, with Cline sign-in and CodeBuddy support).

GUI / quota-monitor alternatives

  • steipete/CodexBar: a macOS menu bar app (Swift, ≈20,905 stars, 1,842 forks, MIT) that shows OpenAI Codex and Claude Code usage stats without requiring sign-in. It’s the project in the same category (macOS menu bar + AI quota) with far more traction; it appears just above Quotio in the curated subinium/awesome-claude-code list.
  • sylearn/AIUsage: “one dashboard” for AI subscriptions — quotas, costs, accounts, a Claude Code proxy, and a Codex proxy (Swift, ≈658 stars, Apache-2.0).
  • Finesssee/ProxyPilot: a native Windows fork of CLIProxyAPI with a TUI, system tray, and multi-provider OAuth (Go, ≈261 stars, MIT).
  • 0xtbug/zero-limit: a cross-platform desktop app for monitoring AI assistant quotas using CLIProxyAPI (TypeScript, ≈231 stars, MIT).

The author’s (nguyenphutrong) repos and community clones

Outside Quotio, the author’s account maintains other projects of their own (GitHub API figures): agentlens (≈59 stars; scans codebases and generates hierarchical symbol maps for agents), i18nlens (≈30; a Zed extension for previewing i18n translations), codex-pools (13), andrej-karpathy-skills-codex (12; packages Karpathy-style guidelines as a Codex skill/plugin), typedora-ui (10), txtension (6), opencode-caffeinate (3; keeps macOS from sleeping during OpenCode sessions), ai-noti (2; notifications when the agent needs input), and the homebrew-tap (1; the tap that distributes Quotio). The rest of the account is mostly forks.

A direct derivative of Quotio exists in xiaocoss/quotio-desktop (Rust, ≈57 stars, MIT, created June 7, 2026), an independent reimplementation. bigidulka/quounter (TypeScript, ≈6 stars) explicitly declares itself “Inspired by Quotio” as a cross-platform app for managing CLIProxyAPI. Also present are kmfb/quotio-lite (1) and several low-traction experiments (thaitryhand/quotio-electron, lehoa1806/quotio-python).

Star counts come from the GitHub search API as returned during this research; they don’t constitute a quality, support, or compatibility audit of each derivative.

A conceptual open-source roadmap image showing the architectural evolution of a macOS menu bar app decoupling from an external proxy dependency, on the left a large central proxy core tightly connected to the app, on the right the architecture refactored into a cleaner modular system: the app, an abstraction layer, provider adapters, and a swappable proxy module, glowing discussion-thread bubbles and version tags floating around the diagram

Official and semi-official status

Quotio is not part of any official marketplace or the Mac App Store: it’s distributed outside the App Store via Developer ID + Apple notarization (since v0.26.0) and Sparkle-based auto-update. Its verified semi-official status is:

  • Homebrew: available as a cask via the author’s tap, nguyenphutrong/tap (brew install --cask quotio). The release workflow (RELEASE.md) automatically updates the tap on every stable release, which makes Homebrew a maintained distribution channel, even though it’s a user tap rather than Homebrew’s main channel.
  • Curated list: included in subinium/awesome-claude-code (≈112 stars) with the description “macOS menu bar app unifying Claude, Gemini, OpenAI, Qwen subscriptions with quota tracking.”
  • Trending: the README carries Trendshift badges (repository 16304) for Swift, indicating it reached that platform’s trending lists.

In practice, Quotio has become a popular, de facto GUI for CLIProxyAPI on macOS: it’s the native menu bar option versus alternatives like EasyCLIProxyAPI (Rust) or CodexBar (monitoring only). There’s no vendor endorsement or formal standard designation in the sources consulted, however. The license is MIT, and the project is funded via GitHub Sponsors and Ko-fi (both under nguyenphutrong’s name, per .github/FUNDING.yml).

Current metrics

Measured: September 4, 2026, GitHub API.

MetricValue
Stars4,830
Forks322
Subscribers (real watchers)14
Open issues per the API124
Commits (approx.)≈479
Primary languageSwift
LicenseMIT
CreatedDecember 24, 2025
Last metadata updateSeptember 4, 2026
Latest releasev0.31.0, September 2, 2026
Total releases68 (from v0.0.1, Dec 25, 2025, to v0.31.0)

Top contributors returned by the API (excluding the github-actions[bot] bot, at 135) are: nguyenphutrong (236), benzntech (18), giaBaoJS (12), crossly (10), DIYgod (6), 1saifj (5), Xm798 (4), and totally-tim (4).

Caveats: (1) the GitHub API’s open_issues_count includes open pull requests, so the 124 shouldn’t be read as an issues-only count; (2) the general response’s watchers_count field mirrors the star count, so subscribers_count (14) is reported as the real subscriber number; (3) the ≈479 commits were obtained from the last page number in the commits API’s pagination link; (4) the release cadence is very high (13 releases in December 2025, 24 in January 2026), indicating an actively, intensively developed project.

Community reception

Reception concentrates on GitHub (Issues, Discussions, and releases) and the CLIProxyAPI ecosystem; no dedicated Quotio thread was found on Hacker News — “quotio” searches return the unrelated product Quotion (quotion.co, Show HN 38706190, 41 points and 37 comments, December 20, 2023). No Quotio threads on Reddit or a Product Hunt page were found either (access blocked by anti-bot protection during this research).

The concrete anchors retrieved are:

  • Discussion #150 — “Help on Model Fallback feature” (author totally-tim, January 11, 2026, 8 comments): the user expected a virtual model to list the same model version from several providers (Anthropic, Antigravity, Copilot…) and only saw one. Maintainer crossly replied that Fallback is designed to switch within the same model type and is experimental, that the single-version behavior was a bug, and that the fix was to refresh the model cache after adding a new provider (linking the guide in discussion #141). crossly invited totally-tim to try PR #169 and join Discord. It’s a clear example of direct maintainer engagement with the community.
  • Discussion #143 — “Security Analysis Report” (author eovidiu, January 10, 2026): a codebase analysis rating as critical the disabled App Sandbox with full network access, Sparkle’s auto-update with an embedded Ed25519 key, and the automatic download of the CLIProxyAPI binary (a supply-chain risk). It’s the most substantial technical criticism retrieved.
  • Discussion #424 — “Proposal: Drop CliProxyApi from Quotio” (author nguyenphutrong, June 29, 2026): the author himself opens the proposal to decouple the proxy so as not to depend on its roadmap. He points to the friction of being “downstream” of the proxy.
  • Discussion #217 — “Feature request: Linux support” (January 20, 2026): a request for a Linux version, currently unanswered (the app is native macOS).
  • Discussion #61 — “[Feature] Price-Based Routing Strategy for Custom Providers” (December 31, 2025): a request for price-based routing for custom providers.
  • CLIProxyAPI ecosystem on Hacker News: while not about Quotio, in thread 46955263 (“CLIProxyAPIPlus – use antigravity, Gemini CLI & more with Claude Code / etc.,” 2 points, 1 comment, February 10, 2026) user radio879 writes that it works with Claude Code and lets them use GitHub Copilot’s Opus models “without exhausting all premium requests,” and that “Copilot is a great deal for what you get for $10.” Other recent comments (e.g., 49544323, 49355109) associate tools like Meridian and CLIProxyAPI with using a Claude subscription with OpenCode.

Balance: enthusiasm is strong in the CLI-agent community (centralized quota and failover solve the painful practice of “juggling” accounts), but real technical criticism points to security (disabled sandbox, remotely downloaded binary) and dependency on an external proxy. The high release cadence and active maintainer engagement in discussions signal a live, responsive project.

Comparison with similar projects

ProjectVerifiable overlapVerifiable difference
router-for-me/EasyCLIProxyAPI (≈1,826★, Rust)A desktop GUI for CLIProxyAPI with system tray, auto-update, and one-click agent configuration; recommended from CLIProxyAPI’s own README.Written in Rust and aimed at generic desktop use, not a native macOS SwiftUI menu bar app.
steipete/CodexBar (≈20,905★, Swift, MIT)A macOS menu bar app showing OpenAI Codex and Claude Code usage/quota without sign-in.Focused on displaying usage (no proxy or multi-account switching); doesn’t manage the proxy or configure agents — its own premise avoids login.
sylearn/AIUsage (≈658★, Swift, Apache-2.0)“One dashboard” for AI subscriptions: quotas, costs, accounts, and a Claude Code and Codex proxy.Broader focus on costs/billing; not presented as the specific CLIProxyAPI GUI or with the same range of OAuth providers.
Finesssee/ProxyPilot (≈261★, Go, MIT)A native Windows fork of CLIProxyAPI with a TUI, system tray, and multi-provider OAuth.Windows-oriented, not macOS.
0xtbug/zero-limit (≈231★, TypeScript)A cross-platform desktop app for monitoring quotas using CLIProxyAPI.Cross-platform (not native macOS); emphasis on monitoring.
xiaocoss/quotio-desktop (≈57★, Rust)An independent reimplementation with the same brand name and goal.Rewritten in Rust; less traction.

The most useful comparison isn’t by popularity: Quotio stands out when you want a native macOS app that combines multi-account management + failover + agent configuration behind CLIProxyAPI. CodexBar is preferable if you just want a lightweight glance at usage without operating the proxy; EasyCLIProxyAPI if you prefer a generic Rust desktop client; and the Windows forks if macOS isn’t the target.

How to contribute

The documented process (README and the docs’ Contributing section) is the standard fork flow:

  1. Fork the project.
  2. Create a feature branch (git checkout -b feature/amazing-feature).
  3. Commit the changes (git commit -m 'Add amazing feature').
  4. Push to the branch (git push origin feature/amazing-feature).
  5. Open a Pull Request.

There’s also verifiable infrastructure:

  • Issue templates: .github/ISSUE_TEMPLATE/ contains bug_report.yml, feature_request.yml, question.yml, and config.yml. The docs ask bug reporters to include the Quotio version, macOS version, clear repro steps, and relevant log snippets.
  • Code of conduct: CODE_OF_CONDUCT.md (standard professional conduct for open-source projects).
  • Release flow: documented in RELEASE.md with a GitHub Actions workflow (release.yml) that signs with Developer ID, notarizes, packages DMG/ZIP, signs the Sparkle appcast, and updates the Homebrew tap. Forks work without Apple credentials because the workflow generates ad-hoc artifacts when signing secrets are missing.
  • Guide for adding agents: the docs include an “Adding Agent” section, indicating a documented process for onboarding new CLI agents.
  • Tests: a QuotioTests directory exists.

Use cases and who this repository can help

  • Developers juggling several AI subscriptions at once (e.g., Claude Max, ChatGPT/Codex, GitHub Copilot, Qwen, Antigravity) can use Quotio to see every quota in the menu bar and automatically switch when an account runs out or enters cooldown, keeping a coding session from stalling on a limit.
  • Users of command-line agents (Claude Code, Codex CLI, OpenCode, Factory Droid, Amp CLI) who want their tools to use subscribed accounts instead of pay-per-use API keys can route all those agents through a single local proxy with one-click configuration in the Agents tab.
  • Teams that share or test several providers can rely on the real-time dashboard (traffic, tokens, success rate), raw logs for debugging, and API key management for the local proxy, keeping a single view of consumption.
  • Those who just want to watch without changing their setup can use Quota-Only Mode to read existing auth files and see quota in the menu bar without starting the proxy or redirecting agents.
  • CLIProxyAPI ecosystem maintainers and advanced users will find value in the project as a GUI reference and in discussion #424 about decoupling the proxy, which signals the architecture’s direction. Before adopting it, it’s worth reviewing the security report (#143) — disabled sandbox, remotely downloaded binary — and checking the signing status of the version you install.

Resources


Methodology note: this article draws on Quotio’s README, official site, and documentation (quotio.dev), release notes and RELEASE.md, the GitHub API (repository, releases, contributors, discussions), router-for-me/CLIProxyAPI’s README, Hacker News searches, and the curated subinium/awesome-claude-code list, consulted on September 4, 2026. Figures change over time. No dedicated Quotio threads on Reddit or a Product Hunt page were found during this research.

Comments