Releases: bezlant/cliMeter
Releases · bezlant/cliMeter
Release list
v1.0.23
Fixes Claude usage polling getting stuck after canceled refreshes or wake/resume, preserves legacy file-backed credentials during read-only migration, and adds regression coverage for read-only and self-owned coordinator cancellation paths.
v1.0.22
v1.0.21
What changed
- Claude Code credentials are now read-only: cliMeter never refreshes or writes Claude Code's shared OAuth token.
- CLI-synced Claude tokens are kept in memory only; disk stores non-secret account metadata/auth markers.
- Removed Claude file-storage and "activate in CLI" flows that could mutate Claude Code state.
- Added stale/rate-limit UI handling and manual retry bypass for stale Keychain rereads.
- Updated README for the read-only Claude sync model.
Verification
xcodebuild test -project Climeter.xcodeproj -scheme Climeter -destination 'platform=macOS' -only-testing:ClimeterTestsxcodebuild -project Climeter.xcodeproj -scheme Climeter -configuration Release build- Guard grep confirmed no Claude refresh/write/file credential paths remain outside self-owned branches.
v1.0.20
v1.0.19
v1.0.18
Fix credential bootstrap when file-based storage is enabled.
- When no credential file exists, fall back to keychain and persist the result to a file
- Fixes
claude logincredentials not being picked up when file-based storage is enabled - After bootstrap, all subsequent reads come from the file (no more keychain access)
v1.0.17
Fix credential overwrite on every app launch.
- Initialize
fileBasedStorageinline sodidSetdoesn't fire during init, preventing migration from running on every launch - Guard CLI credential seeding on file existence (
cliCredentialFileExists()) so existing credentials are never overwritten - Fixes "token invalid" errors caused by stale cached tokens overwriting fresh CLI login credentials
v1.0.16
Fix: Eliminate keychain popups in file-based storage mode
ClaudeCodeSyncService always used the macOS Keychain for CLI credential sync regardless of the file-based storage preference, triggering password prompts every 30 seconds (monitor timer), on profile switch, token refresh, and wake-from-sleep.
Changes
- Route CLI credential reads/writes through
~/.claude/.credentials.jsonwhen file-based storage is enabled - Skip keychain cleanup during migration to avoid
SecItemDeleteprompts - Write credential files atomically with
0600permissions from creation - Seed CLI credential file during storage migration to prevent monitoring blind window
v1.0.15
What's New
- Peak hours indicator — shows when Claude rate limits are tighter (5-11 AM PT, weekdays) with a countdown timer and local timezone conversion
- Orange dot in menu bar during peak hours
- Provider badges — Anthropic and OpenAI badges on usage cards
- Settings toggle for peak hours indicator
- Website updated with peak hours mockup and new feature cards
Docs
- Removed stale implementation plans
- Updated README with file-based storage and per-provider toggle features
v1.0.14
- Add optional file-based credential storage to avoid macOS Keychain security popups.
- CLI credential sync reads from Claude Code credential files before falling back to Keychain.
- Safe migration between Keychain and file-based storage with rollback on partial failure.
- Add Show Claude usage toggle (mirrors existing Codex toggle).
- Full async task cancellation when provider toggles are disabled.
- Show full credential file paths on hover in Settings.