onWatch v2.12.0
onWatch v2.12.0
New: OpenCode (opencode-codex) ChatGPT OAuth support (#78)
onWatch now tracks ChatGPT/Codex quota for OpenCode users who log in via OpenAI OAuth - no token copying required.
- Auto-detects
~/.local/share/opencode/auth.json(honorsOPENCODE_HOMEandXDG_DATA_HOME), parsing OpenCode's{"openai":{...}}format including its millisecondexpiresfield. - Feeds the existing Codex/ChatGPT dashboard card - same provider, same usage endpoints.
- Detection priority: Codex (
~/.codex/auth.json/CODEX_HOME) wins when both exist, then OpenCode, thenCODEX_TOKEN. - Configurable at every layer:
onwatch setup,install.sh, theOPENCODE_ENABLED=trueenv flag, and dashboard admin settings. - Refreshed tokens are written back in OpenCode's own format, so one-time-use refresh tokens stay valid.
Fixed: Copilot quota percentages inverted (#75)
Copilot utilization was computed as remaining / total instead of used / total, inverting the reading on free/limited plans and firing false Danger/Critical badges. Percentages and status badges now reflect true consumed usage (e.g. 3987/4000 completions = ~99.7% consumed).
Fixed: MiniMax percentage-based quota
MiniMax migrated its API from request-count quotas to a percentage model (current_interval_remaining_percent / current_weekly_remaining_percent). onWatch now parses the new fields correctly instead of storing zeros, closes cycles for discontinued models, and the Cycle Overview reflects the active quota.
In addition, an exhausted interval (current_interval_status=2, 0% remaining) is now tracked as 100% used instead of being hidden - so a maxed-out 5-hour quota shows up and alerts fire when you actually hit the limit. Previously only status=1 was treated as active.
Dashboard
- MiniMax cards are now full-width for better readability of the general/weekly quotas.
- Removed the unused Total Delta and Duration columns from the MiniMax Cycle Overview.
Full Changelog: v2.11.46...v2.12.0