PitStop v0.4.0
What's new in v0.4.0
Fable weekly limit
Claude now tracks per-model weekly limits separately (starting with Fable). PitStop parses the usage API's new limits array and shows each scoped limit as its own labelled bar on Claude rows — and it counts toward the binding number, so the menu bar %, most-urgent tracking, auto-switch, threshold notifications, and "on pace to hit limit" projections all react to it. Future scoped limits appear automatically. (The retired Opus/Sonnet weekly fields are gone; scoped limits replace them.)
Reliability sweep
A full-codebase bug hunt fixed 26 issues. Highlights:
- Gemini switching no longer corrupts
~/.gemini/oauth_creds.json(keychain hex round-trip), and already-corrupted snapshots heal on read; Antigravity-only switches update the active Google email so tokens can't be filed under the wrong account. - Codex switches preserve an API-key-only
auth.json; a half-failed Claude switch rolls the keychain back. - An external re-login heals a "re-login needed" row within one refresh cycle instead of an hour; a dead Claude Code token is no longer silently retried every 2 minutes behind a healthy Desktop fallback.
- OAuth logins survive browser preconnect/favicon connections (previously a spurious "timed out" that burned the sign-in), clicking Deny reads as a cancel, and the paste window's close button no longer crashes.
- Plus: staged-keychain crash recovery, a single-instance lock, symlink-safe config writes, updater deadlock fix, fractional-timestamp parsing for Antigravity, stale-state pruning, and a batch of display fixes ("<1m" countdowns, rounded bar colors, banners while frontmost, launch-at-login sync).
See CHANGELOG.md for the full list.
Full Changelog: v0.3.1...v0.4.0