Skip to content

v0.1.0

Choose a tag to compare

@victorhqc victorhqc released this 21 Jul 22:29
c5d5048

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 uchg approach 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

  1. Mount the DMG and drag AI Usage to /Applications.
  2. 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.