v0.1.0
Overview
The first release of AI Usage — a macOS menu-bar app that tracks your AI provider usage at a glance. Monitor z.ai quotas, Claude Code session limits, and DeepSeek prepaid balances from the menu bar. Each provider refreshes independently every 5 minutes, and the menu-bar icon shows your top provider's live status as a ring.
✨ Features
- Three providers. z.ai (token usage + web-tool calls), Claude Code (session/weekly limits, no API key needed), and DeepSeek (prepaid balance with configurable low-balance alerts).
- Live menu-bar ring. A dynamic ring + percentage replaces the static icon, showing the top provider's usage without opening the popover.
- Usage bars. Horizontal color-coded bars (green/orange/red) for every quota line, making usage scannable at a glance.
- Peak-hours panel. z.ai's GLM Coding Plan multiplier shown inline with timezone-aware labels so you know when rates are highest.
- Provider ordering. Drag and drop providers in Settings to set your preferred popover order. Survives restarts.
- Quiet refresh. Last-known data stays visible during refresh — no flicker. The Refresh icon animates while fetching, and errors appear as a non-blocking indicator.
- Multi-provider settings. A dedicated Settings window with per-provider API keys, base URL overrides for proxy routing, and balance threshold controls for DeepSeek.
- Four locales. English, Spanish (Spain), Spanish (Mexico), and German.
- App icon. A proper Dock and Notification Center icon, plus mascot branding.
🐛 Bug Fixes
- Release builds no longer crash with "could not load resource bundle" — the build script patches SPM's resource accessor to find bundles inside
Contents/Resources/. - The z.ai peak-hours label now converts Shanghai (UTC+8) hours to your local timezone instead of showing raw UTC+8 times.
- The peak-hours block re-evaluates on manual refresh so the peak/off-peak status stays current.
- SPM no longer regenerates the patched resource accessor during the relink step of release builds.
- The
chflags uchgapproach for freezing accessors (which failed on GitHub Actions runners) is replaced with a direct swiftc command replay from the llbuild manifest.
📝 Changes
- feat: add agents, skills, and project documentation (574e3e2)
- ci: add validation-gate workflow and spec (f549f68)
- feat: bootstrap project (#1) (371842a)
- feat: z.ai provider (#2) (445822b)
- feat: settings view (#3) (834afca)
- feat: add usage bars, peak block, and icon refresh (#4) (7acd946)
- feat: add Spanish and German localizations (#5) (c975e8f)
- feat: claude code (#6) (76c5d73)
- Update README provider status and Claude setup (#7) (597b2a8)
- fix: claude code (#8) (84e04d7)
- UX improvements: quiet refresh, animated icon, cleaner popover footer (#9) (1031e67)
- Add DeepSeek prepaid balance monitoring (#10) (b011c83)
- fix: peak-hour time label for ZAI's Shanghai time zone (#11) (6e002f8)
- fix: force PeakHoursBlock re-evaluation on refresh (#12) (5d4168b)
- refactor: decouple peak hours block from ZAI provider (#13) (f01828f)
- feat: add provider ordering settings with drag-and-drop (#14) (4139075)
- feat: add live status ring to menu bar (#15) (6d98458)
- docs: add CONTRIBUTING.md and update README (#16) (52987b1)
- feat: add app icon and mascot branding assets (#17) (4a27d3c)
- feat: automate unsigned DMG builds triggered by GitHub Release publish events (#18) (b480f05)
- fix: patch resource bundle accessor to load from Contents/Resources/ (#19) (7a908ba)
- feat: freeze resource accessor patch during relink (#20) (67a49aa)
- fix: replay SPM compile commands instead of using chflags (#21) (c5d5048)
AI Usage 0.1.0
Unsigned macOS build (Apple Silicon). Direct distribution, ad-hoc signed.
- DMG: AI-Usage-0.1.0-arm64.dmg
- SHA-256:
2f057126d76c0aaec039ad61ddffff1db85605f47f1b5e98c817c0c80fd6de2a
Install
- Mount the DMG and drag AI Usage to /Applications.
- On first launch, macOS Gatekeeper will block the app because it is
unsigned. Do one of:-
Right-click AI Usage in /Applications → Open → confirm the
prompt. Only needed once. -
Or run this in Terminal:
xattr -cr '/Applications/AI Usage.app'
-
Why unsigned?
This is a transitional state. The moment an Apple Developer Program
membership is configured, releases automatically become signed and
notarized with no action on your part.