6.5 KiB
summary, read_when
| summary | read_when | |||
|---|---|---|---|---|
| Quotio comparison notes and possible CodexBar enhancement ideas. |
|
Quotio Comparison & Enhancement Opportunities
Date: 2026-01-04
Source: https://github.com/nguyenphutrong/quotio
Overview
Quotio is a similar macOS menu bar app for AI quota tracking with 2k stars and 117 forks. It has a broader scope (proxy server + quota tracking) but shares many features with CodexBar.
Key Differences
Architecture
- Quotio: Manages a local proxy server (
CLIProxyAPI) that routes requests to multiple AI providers - CodexBar: Direct provider monitoring only (no proxy layer)
- Implication: Quotio is more complex but offers request routing/failover
Provider Support
Quotio supports:
- Gemini, Claude, OpenAI Codex, Qwen, Vertex AI, iFlow, Antigravity, Kiro, GitHub Copilot
- IDE monitoring: Cursor, Trae (auto-detected, monitor-only)
CodexBar supports:
- Codex, Claude, Cursor, Gemini, Antigravity, Droid/Factory, Copilot, z.ai, Kiro, Vertex AI, Augment
Unique to CodexBar:
- Augment (we just added!)
- z.ai
- Droid/Factory
Unique to Quotio:
- Qwen, iFlow
- Trae IDE monitoring
Features We Should Consider
1. Auto-Warmup Scheduling ⭐⭐⭐
What: Automatically trigger 1-token model invocations on a schedule to keep accounts "warm" Why: Prevents cold-start delays, maintains session freshness Implementation:
- Interval-based (15min-4h) or daily scheduling
- Per-account model selection
- Progress tracking in UI Effort: Medium (requires background task scheduler) Value: High for providers with session timeouts (Claude, Augment)
2. Account Switching for Antigravity ⭐⭐
What: Switch active Antigravity account by injecting OAuth tokens into IDE's SQLite database Why: Allows multi-account workflows without manual IDE logout/login Implementation:
- Read/write to
~/Library/Application Support/Antigravity/User/globalStorage/state.vscdb - Protobuf encode/decode for OAuth tokens
- Process management (close IDE → backup → inject → restart) Effort: High (complex SQLite + protobuf + process management) Value: Medium (niche use case, but powerful for multi-account users)
3. Standalone Quota Mode ⭐
What: View quotas without running proxy server Why: Lighter weight, faster startup for quick checks Implementation: Already how CodexBar works! (We don't have a proxy) Effort: N/A (we already do this) Value: N/A (already implemented)
4. Smart Routing Strategies ⭐⭐
What: Round Robin or Fill First routing for multi-account setups Why: Optimize quota usage across accounts Implementation: Would require proxy layer (not applicable to CodexBar's architecture) Effort: Very High (requires proxy server) Value: Low for CodexBar (out of scope)
5. Custom Provider Support ⭐⭐⭐
What: User-defined AI providers with OpenAI-compatible, Claude, Gemini, Codex API configs Why: Extensibility for new/custom providers without code changes Implementation:
CustomProvidermodel with API type, base URL, auth- YAML config generation
- UI for add/edit/delete custom providers Effort: Medium-High Value: High (future-proofs the app, community can add providers)
6. Multilingual Support ⭐
What: English, Vietnamese, Chinese, French
Why: Broader user base
Implementation: .xcstrings localization (we already have infrastructure)
Effort: Medium (translation work)
Value: Medium (depends on target audience)
UI/UX Learnings
Menu Bar Design
- Quotio: Custom provider icons in menu bar, quota overview popup
- CodexBar: Two-bar meter icon, detailed menu card
- Takeaway: Both approaches valid; CodexBar's meter is more info-dense
Settings Organization
- Quotio: Dashboard, Providers, Agents, Quota, Logs, Settings tabs
- CodexBar: Settings → Providers with per-provider toggles
- Takeaway: Quotio's tab-based navigation is cleaner for complex apps
Quota Display
- Quotio: Grid layout with tier badges (Pro/Ultra/Free), inline refresh
- CodexBar: List-based with session/weekly bars
- Takeaway: Tier badges are a nice visual touch
Recommended Enhancements for CodexBar
Priority 1: Auto-Warmup Scheduling ⭐⭐⭐
Why: Keeps sessions alive, prevents auth failures Implementation:
- Add
WarmupSchedulerservice with interval/daily modes - Per-provider warmup config in Settings
- Background task to trigger minimal API calls (1-token requests)
- UI to show last warmup time + next scheduled warmup
Providers that benefit:
- Claude (session expires)
- Augment (session expires)
- Codex (session expires)
Priority 2: Custom Provider Framework ⭐⭐⭐
Why: Community extensibility, future-proof Implementation:
CustomProvidermodel (name, icon, API type, base URL, auth)- Settings UI for CRUD operations
- Generic quota fetcher that adapts to API type
- Save to UserDefaults or JSON file
Benefits:
- Users can add new providers without waiting for releases
- Easier to experiment with beta/internal APIs
Priority 3: Enhanced Antigravity Support ⭐⭐
Why: Quotio's account switching is powerful Implementation:
- Add
AntigravityAccountSwitcherservice - SQLite database read/write for token injection
- Process manager for IDE restart
- UI confirmation dialog with progress states
Complexity: High, but valuable for power users
What NOT to Adopt
❌ Proxy Server Layer
- Why: Out of scope for CodexBar's mission (monitoring, not routing)
- Complexity: Very high (server management, request routing, failover)
- Maintenance: Ongoing burden
❌ Agent Configuration
- Why: Quotio auto-configures CLI tools (Claude Code, OpenCode, etc.) to use its proxy
- Relevance: Not applicable without proxy layer
Conclusion
Top 3 Enhancements:
- Auto-Warmup Scheduling - Keeps sessions alive, prevents auth failures
- Custom Provider Framework - Future-proof, community-driven extensibility
- Enhanced Antigravity Account Switching - Power user feature
Quick Wins:
- Tier badges in quota display (visual polish)
- Tab-based settings navigation (if app grows more complex)
Skip:
- Proxy server layer (out of scope)
- Agent configuration (requires proxy)