Last updated: 2026-04-23
ai_usage_dashboard is no longer just a planning repo.
Phase 11 complete in the working tree: threshold notifications and dynamic tray icon landed, and npm run typecheck, cargo check, cargo clippy --all-targets -- -D warnings, and npm run build --workspace @ai-usage-dashboard/desktop all pass.
Phase 13 is complete in the working tree: provider-specific connection guides, first-class issue states, and persisted Home compact mode are added on top of Phase 11.
Phase 12 is complete in the working tree: light/dark tokens are fully branched and brand colors are preserved across themes.
Applied after visual verification on macOS:
max to last-viewed; migration in BrowserSettingsStore.load rewrites persisted "max" values so existing installs pick up the new default.homeCompactView default flipped to true; Home now opens in compact mode by default.shared::read_keychain_cached so repeated refreshes no longer trigger repeated macOS keychain prompts. Save/clear operations prime/invalidate the cache.1차 알림 / 2차 알림) so the layout no longer overflows.displayMode in compact mode: used vs left now flips the headline percentage and label.cursor-pointer applied globally to buttons plus the tab/segmented/sidenav primitives; button:disabled falls back to not-allowed.It now has:
core, platform, providers, and apps/desktoppackage.jsontsconfig.jsontsconfig.base.json.gitignorepackages/core
shared domain models, settings, snapshots, refresh orchestrationpackages/platform
platform contracts for credential store and settings storepackages/providers
provider adapters for codex, claude, copilot, and openrouterapps/desktop
React/Vite frontend shellapps/desktop/src-tauri
Tauri v2 native runtimePhase 14 is complete in the working tree: native credentials now resolve through a shared CredentialSource registry with startup warm-up and Codex/Claude OAuth refresh persistence.
Phase 15 is complete in the working tree: light-mode semantic tokens are finished, ko/en localization is bundled through desktop i18n, interactive controls have broader accessibility coverage, and tray positioning/menu labels are polished.
Phase 16 is complete in the working tree: provider schema/backoff resilience, shell-launched CLI connect flow, Home simplification, and reset-timer guidance are now wired through the desktop app.
Phase 17 is complete in the working tree: Settings trims, implicit platform detection, switch contrast, and Home/Detail connect CTA placement are landed.
Phase 18 is complete in the working tree: the tray first-paint now uses a Rust-side white mask, Claude diagnostics are env-var gated, and the SideNav/Home/footer polish is landed.
Implemented in the desktop shell:
~/.codex/auth.jsonhttps://chatgpt.com/backend-api/wham/usage~/.codex/sessions/**/*.jsonl~/.claude/.credentials.json, CLAUDE_CONFIG_DIR, or native keychainhttps://api.anthropic.com/api/oauth/usagegh keychain entry, or app state filehttps://api.github.com/copilot_internal/userOPENROUTER_API_KEYhttps://openrouter.ai/api/v1/keyCurrent metric payloads cover shared progress, text, and badge lines across the Tauri commands and frontend adapters.
Added and validated.
Key files:
Implemented native commands:
get_codex_usageget_claude_usageget_copilot_usageget_openrouter_usagesave_openrouter_keyclear_openrouter_keyhas_openrouter_keydetect_platformValidation completed:
cargo check passedcargo clippy --all-targets -- -D warnings passednpm run typecheck passednpm run build --workspace @ai-usage-dashboard/desktop passedtauri build passedRelease binary path:
Implemented.
Current behavior:
Accessory activation policy on macOSShow DashboardGo to SettingsQuitRelevant files:
Implemented in:
Current UI model:
home, provider detail, settings viewsThe UI has been iterated toward the original openusage GitHub app:
The current UI is now tuned for a compact menu bar panel:
Primary files:
Completed during development:
npm installnpm run typechecknpm run build/api/codex/usage response verificationcargo checktauri buildnpm run dev:tauriObserved live Codex response during testing included:
Pro 5xThe Codex usage path is practical but not based on a public stable OpenAI API contract.
That means:
This is now a working foundation for a real desktop app, but not a fully productized release yet.
Still missing or incomplete:
html.light/html.dark setting toggleRecent commits:
014a6c9 docs: add initial cross-platform architecture and roadmapb92c9eb build: scaffold workspace for desktop core and providersc5a7965 build: ignore TypeScript build metadataebf43bc feat: add runnable desktop shell ui7258384 feat: add live codex usage integration119f409 feat: add tauri codex desktop shell94432b2 feat: align desktop ui with openusage layout63ba613 feat: add menubar tray behavior