LithosAI: show prepaid balance beside the menu bar icon
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
Research direction
Start in Sources/CodexBar/MenuBarLayout.swift at MenuBarLayoutBalanceResolver.balance and compare its existing provider cases with Sources/CodexBarCore/Providers/LithosAI/LithosAIProviderDescriptor.swift. Trace how the existing cost and Balance detail reach automatic and explicit menu bar layouts. Done means LithosAI shows its prepaid balance in both requested modes, including merged mode, while preserving zero, negative, and sub-cent handling.
Written by the indexing model from the issue text.
Description
LithosAI billing loads correctly in CodexBar, but its prepaid balance is only visible after opening the dropdown. Please show the balance beside the LithosAI menu bar icon, like the standalone LithosAI Bar app: L $2.57 instead of just L.
This is a follow-up to my provider request #3868, implemented by merged PR #4196 (feat(lithosai): add console balance and spend, merged October 2, 2026).
Current behavior and reproduction
- Enable LithosAI and authenticate with valid console cookies.
- Use the Icon & percent menu bar style (
menuBarDisplayMode = percent) with Merge Icons enabled. - Select LithosAI in the provider switcher.
- The dropdown shows Balance: $2.57 and active billing details, while the menu bar shows only the LithosAI icon. The standalone app shows its mark followed by $2.57 for the same account.
The dollar figure is an example of the observed UI. Authentication and billing requests succeed; this request concerns the menu bar display.
Requested behavior
- Use LithosAI's prepaid USD balance as the automatic numeric menu bar value when it has no quota window.
- Make the existing explicit Balance layout token work for LithosAI too, including merged mode when LithosAI is selected.
- Preserve the provider's handling of zero, negative, and sub-cent balances without inventing a usage percentage or reset time.
Likely integration gap
In v0.71.1's LithosAI descriptor, the provider is already balanceOnly: true and uses .automaticOnly menu bar metrics. The plugin returns the amount through cost and a Billing / Balance detail row, with Browser session as the login method.
However, MenuBarLayoutBalanceResolver.balance does not include a LithosAI case. Its generic fallback expects a Balance: login-method prefix. The same omission is still present in current main at the time of this report. Please connect the existing LithosAI balance to the shared balance/automatic-text presentation.
Environment: CodexBar 0.71.1, macOS 27.0.1, Apple Silicon. No per-provider menu bar layout override is set for LithosAI.
Related authentication report: #4231 covers Auto Chrome import failing without an actionable permission error or Keychain prompt. Manual authentication works; the menu bar balance request here is independent of that import problem.
- Dominant language
- Swift
- Stars
- 22.8k
- Forks
- 2.2k
- Avg merge
- 21h 11m
- Merged PRs (30d)
- 432
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from steipete/CodexBar
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 1/5 1-3 hours Newbie friendliness 73/100
steipete/CodexBar#4764 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster P2
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
steipete/CodexBar#4758 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
clawsweeper:fix-shape-clear clawsweeper:needs-live-repro clawsweeper:needs-maintainer-review clawsweeper:needs-product-decision clawsweeper:no-new-fix-pr impact:ux-friction issue-rating: 🐚 platinum hermit P2
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
steipete/CodexBar#4714 · 3 comments · 1 reaction ·
Maintainers usually reply within 1 day
-
clawsweeper:fix-shape-clear clawsweeper:needs-maintainer-review clawsweeper:needs-product-decision clawsweeper:no-new-fix-pr issue-rating: 🌊 off-meta tidepool P3
Difficulty 5/5 Over a week Newbie friendliness 35/100
steipete/CodexBar#4775 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
clawsweeper:needs-product-decision clawsweeper:no-new-fix-pr impact:ux-friction issue-rating: 🌊 off-meta tidepool P3
Difficulty 5/5 Over a week Newbie friendliness 25/100
steipete/CodexBar#4772 · 2 comments · 1 reaction ·
Maintainers usually reply within 1 day
All issues in steipete/CodexBar
Similar issues
-
a:bug
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
vorssaint/vorssaint-utils#3527 ·
Maintainers usually reply within 1 day
-
bug iOS UI
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
devsoc-unsw/freerooms-mobile#278 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
rorkai/App-Store-Connect-CLI#3192 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
jellyfin/Swiftfin#2388 · 1 comment ·
Maintainers usually reply within 1 day