Mockup · not a real screenshot · macOS only

# What we could put on your Mac

A live menu-bar pill, a click-down menu, and a side panel pinned to the right edge — all showing every account at once, Claude and Codex/OpenAI. Each account shows its 5-hour and weekly window with the white time-marker from your dashboard, so you can see when you're burning too fast.

1 The whole idea, on your desktop

The panel sticks to the right edge and stays visible on every Space, floating over your editor and terminal. Same bars as your dashboard — colored fill = quota used, white line = where you are in the window by time.

Claude Code File Edit View
J 96% · 78%
⌕◉100% Fri 2:14 PM
claude — zsh — 80×24
jack@studio ~/Github/claude-jacked
❯ claude
● Working on auth refactor…
● Tests: 2438 passed
❯ ▋
oauth.py — jacked
# OAuth PKCE flow
CLIENT_ID = "9d1c250a-e61b-…"
async def exchange_code(self, code):
return await self._post(TOKEN_URL)
J
jacked Account usage
◨
A
jack@hank.ai
1 login · 2 orgs
Hank AI· Enterprise ACTIVE MAX
5H
62%4:41p
7D
41%Mon
Personal· individual PRO
5H
12%—
7D
9%Wed
A
Hank Research · ml-research@hank.ai
MAX
5H
96%3:08p
7D
78%Mon
O
codex@hank.ai · OpenAI
PLUS
5H
71%5:20p
7D
34%Mon
Auto-swap ON → next: Personal
↗ Open full dashboard
↑ ml-research is the warning: 5H fill is way past the white line — 96% burned with only 38% of the window gone. The pill goes red to match.
2 Or just click the menu-bar icon

Don't want the panel up? Click the pill and the same bars drop down — both windows, the white pace-marker, and same-email/different-org accounts grouped under one login.

J 96% · 78%
2:14 PM
Accounts · usage now 5-HOUR WEEKLY
A
jack@hank.ai
1 login · 2 orgs
Hank AI· Enterprise ACTIVE MAX
5H
62%4:41p
7D
41%Mon
Personal· individual PRO
5H
12%—
7D
9%Wed
A
Hank Research · ml-research@hank.ai
MAX
5H
96%3:08p
7D
78%Mon
O
codex@hank.ai · OpenAI
PLUS
5H
71%5:20p
7D
34%Mon
↗ Open Dashboard⌘D
◨ Toggle Side Panel⌘\
Auto-swap✓ On
＋ Add account…
Quit jacked⌘Q
The white line is the whole point.
Colored fill = how much of the window's quota you've used. White line = how far through the window you are by time.
• Fill past the line → burning faster than the clock (ml-research: 96% used, 38% of the window gone).
• Fill behind the line → you'll reset before running out (codex: 71% used, 82% gone).
Numbers come from `/api/analytics/usage-overview`; "Add account…" is where an OpenAI/Codex login slots in.
3 Pick how loud the menu bar is

Same data, four levels of glance. Tabular digits so the width never jitters as numbers change.

J

Icon only
Quiet. Click for detail.

96%

Worst account
One number — your most-saturated account, color-coded.

J 62% · 14%

Active acct
5-hour · weekly for the account in use right now.

▦ 62 96 12 71

All accounts
Every account's 5h%, side by side. Densest glance.

4 The one honest limit

You asked it to "stick to the side." It floats there, always on top, on every Space. What macOS will not let a normal app do is reserve that strip like the Dock, so a maximized window can still slide underneath it. The apps that fake "reservation" replace your Dock or run a permission-hungry window manager — not worth it for a usage strip.

✓ What you get
USAGE
Floats on top · always visible · every Space ✓
Public AppKit API (verified on current macOS). The panel sits over everything; your windows are untouched.
✗ Not possible
USAGE
Reserve the strip so windows can't cover it ✗
No public API for this (no Dock-style "strut"). The maximized window fills the whole screen, under the panel.
5 What we'd skip: a native "desktop widget"

macOS desktop / Notification-Center widgets (WidgetKit) sound right but Apple only lets them refresh every 15–60 minutes and they can't show your live web dashboard — they'd show stale numbers. The live surface is the menu bar + the floating panel.

Claude usage · 1:50 PM 58% ⚠ last updated 24 min ago

Looks nice, but it's a snapshot the system throttles. Wrong for "am I about to get rate-limited right now."

So the plan is:

✅ Menu-bar pill — live, updates every few seconds, glanceable from anywhere.
✅ Floating side panel — your real dashboard bars, pinned right, on every Space.
⏭️ WidgetKit widget — skip, or add later as a stale "nice to have."

Reality check. The menu-bar app + floating panel are mostly reuse — your tray code, your local server, and your existing dashboard bars (the `.elapsed-marker` shown here is copied straight from `usage.js`) all carry over; the new part is swapping `pystray` for `rumps` on Mac (crisp live menu-bar text) and a thin `WKWebView` panel at `127.0.0.1:8321`. The OpenAI/Codex account is the separate piece: its login is a clean port of your OAuth flow, but reading its usage rides an undocumented Codex surface.
<71% healthy 71–90% tight >90% saturated white line = time elapsed in window A Claude O OpenAI