The dashboard has a new name and a reworked bar panel. Everything from 1.7 is still here. It's just arranged so the numbers you check most often are at the top.
โก Live Today count
The panel and dashboard now lead with how many tokens you've processed today, and the number moves while you work.
While the panel or dashboard is open, it checks your local agent histories every 15 seconds and rolls up to the new total. Counts move when an agent records usage, usually right after a response.
It only reads local history. Limits, synced ledgers and Cursor still refresh on the normal schedule.
The dashboard updates in place as new usage comes in. It no longer dims or locks the page on each refresh, so you can keep reading and scrolling while it updates. It only waits on a scan when you change the period, a filter or the source, and a fast one shows no dimming.
๐ Hourly history
The panel shows the latest six hours. The dashboard opens on Today with hourly bars split by source, and clicking an hour shows its source totals.
Hour labels, reset times and timestamps follow the 12 or 24 hour format of your Omarchy bar clock.
Hermes reports session totals without request timestamps. Those tokens stay in the day total and are labelled separately instead of being guessed into an hour.
๐ Pinned limits
Pin up to three limits from any source and they sit together at the top of the panel and the dashboard, each with its usage and reset time. Below them, "Limits to watch" shows the fullest limit from up to three other sources.
Anthropic started handing out banked usage resets today, the same idea ChatGPT has had for Codex. This release puts them on the Claude card, shows when any banked reset expires, and brings back the provider logos that went missing a few releases ago.
โณ Claude banked resets
The Claude card now shows how many resets you have banked and when the next one expires, like "1 reset banked ยท expires Oct 22".
The count comes from the same Anthropic usage endpoint the Claude limits already use. Anthropic only returns it to a current Claude Code CLI, so the refresh sends your installed claude version. It finds the CLI on PATH or where Claude Code's installers put it.
Your token comes from Claude Code's own saved sign-in and only goes to Anthropic's usage endpoint.
Answers are cached for five minutes and rate limits are respected, so opening the panel over and over doesn't hammer the API. If a read fails, the last answer stays up for up to 30 minutes before the count goes to unknown.
The line no longer flickers when the panel opens. Omarchy's own collector briefly rewrites the Claude record without resets during a refresh, and the panel now holds the last count through that.
The reset notifier already watches Claude, so you get a desktop alert when a new reset shows up.
๐ Codex reset expiry
Codex banked resets now show their expiry date too. It comes from the credit endpoint the count already uses, so there's no extra request.
๐จ Provider logos are back
Codex Second, CommandCode, ClinePass, Ollama Cloud, OpenCode Go, Grok and Cur
This release puts CommandCode's extra-credit balance on the card, makes model totals and route attribution add up across Muse and T3 Code, and stops the window from rescanning history every time you change a filter.
๐ณ CommandCode extra credits
The plan's windows were never the whole story: once its credits run out, work continues against the extra credits you bought. That wallet now shows as money on the CommandCode card and in the bar panel:
What is left comes from the billing response the plan windows are already read from, so no new request and no new key.
What it was funded with is what is left plus what this period has drawn from it, and the card says "estimated" because that part is derived.
A wallet with nothing in it stays off the card, and one left over from a plan that no longer reports windows still shows on its own.
The balance travels on the agent record, so Omarchy's built-in agents panel picks it up too, and it carries CommandCode's own name for the wallet rather than a generic label.
๐งฎ Totals, routing, and a quieter window
Vendor-prefixed muse-spark-* records now count with the bare Muse model in totals and filters, including the bar panel's all-route model list, while keeping their route attribution.
T3 Code's isolated provider instances are discovered and attributed: CommandCode's Codex and Claude runtimes land on the CommandCode card, FlashX is counted at its published rates, and T3 OpenCode instances for Ollama Cloud and ClinePass reach their own cards.
This release adds Cursor โ cloud usage events and a billing-cycle quota meter โ and fixes the installer's built-in-widget check, which could only pass on the machine it was written on.
๐ฃ Cursor
Cursor is the first source here that cannot be rebuilt from local files, so it is read from Cursor's own usage events, per model:
Token history โ every event's input, output, and cache-read tokens, priced at list price
A billing-cycle quota meter with its reset date, read through the session the Cursor desktop app already stores locally
Free events still count โ an event that carries no tokens is kept as a turn rather than dropped as empty
The session token is read from Cursor's local store and is never copied, logged, or sent anywhere but Cursor. The endpoint is undocumented and can move without notice; when a call fails, the previous snapshot stays in place with its error and nothing else in the dashboard is affected.
Event costs are list prices and plan discounts are not applied per event, so the quota card's billed total is the figure to trust where the two disagree.
Cursor support arrived as a community pull request from @hilather โ the collector, the paginated walk with resume, the quota mapping, the pricing, and the tests are his work. Thank you.
๐ Also in this release
The installer's built-in-widget check read /usr/share/omarchy directly โ a path that exists on a development machine and nowhere else โ so it passed locally and went red the moment it ran anywhere else. It now follows the OMARCHY_PATH conve
This release makes the packaged widget the only widget โ and the complete one โ adds reset notifications, and counts work done through the Command Code CLI.
๐ The widget merge
The widget that ships with the dashboard now includes everything a private, customized clone held โ rebuilt as settings anyone can set from the widget's bar.layout entry in shell.json:
providerOrder โ walk the bar and panel in your order. Unlisted providers follow alphabetically, so a new provider never drops off the end.
launchCommands โ right-click a provider to launch its own CLI in a terminal; unmapped providers fall back to Omarchy's agent picker.
extraProviders โ write an upstream-format record into the usage directory and the widget shows it. Bring your own collector; the record is the whole contract.
alwaysShow โ keep a provider on the bar before it has numbers.
Fireworks is back (off by default; enable it in Settings).
The installer now names any other installed model-usage widget it finds โ including Omarchy's built-in Agents widget โ so a second AI icon never appears by surprise.
๐ Reset notifications
A desktop notification when a weekly or monthly limit resets, or when banked reset credits arrive (the way Codex delivers dropped resets) โ with the provider's own mark on the popup.
Short (session) windows never notify
Codex and Claude are watched by default; more via --provider, never by silent opt-in
Overlapping refreshes serialize on a lock file, so a reset notifies exactly once
CommandCode usage: plan windows read from an API key you supply, with the resets it publishes. Its allowance is measured in credit value rather than tokens (the $10 GOAT plan allows $14 in any 5 hours, $35 in any 7 days, and $70 a month), and each window reports its own spend, cap, and reset time, so these meters carry a countdown where the other providers cannot. Add the key under Settings, or export COMMANDCODE_API_KEY, or drop it in ~/.config/omarchy/ai-usage/commandcode.key. The key is never written back, never leaves the request it authenticates, and never appears in anything the dashboard renders.
Count CommandCode token history through the same agent ledger as OpenCode Go and Ollama Cloud. Its two profiles for one account, one OpenAI-shaped and one Anthropic-shaped, collapse onto one card, with the raw route kept in the Routes breakdown so nothing is double counted.
CommandCode model rates, transcribed from the rates it publishes rather than the labs' list prices, since it bills against its own resale table. Includes its peak window that doubles the DeepSeek rates on weekday early mornings. Models that are free while capacity lasts price at zero instead of reading as unpriced.
Keep the provider tabs on one row: the chips now share the width evenly and keep their own text width, so four or five providers sit on one line instead of wrapping, with more room on both sides.
Ollama Cloud usage: local token history alongside the plan's usage limits, read from an API key you supply. Add it under Settings, or export OLLAMA_API_KEY, or drop a key in ~/.config/omarchy/ai-usage/ollama.key. The key is never written back, never leaves the request it authenticates, and never appears in anything the dashboard renders.
Ollama Cloud model rates, including the published peak window that doubles the DeepSeek rates on weekday afternoons.
Count your agent's own OpenCode Go and Ollama Cloud spending. Running those routes through Hermes used to hide that usage; both are now included, and they reconcile to the agent's own ledger exactly.
Split agent-sourced usage by what it was for: typed prompts, title generation, context compression, vision, approvals, and background review.
Treat a Hermes home as an account source folder, so it can be labelled per account or imported from another machine.
Show up to four model rows on each overview card, from local token totals. Providers whose usage endpoint reports one aggregate number cannot supply per-model shares, so the local figures are the honest view there.
Fix the bar widget's scrollbar so it no longer draws over the text, and give the provider chips room to fit their labels.
Synced machine ledgers: point every machine at one shared folder and each imports the others' snapshots, so totals, charts, and model breakdowns cover all of them.
Show synced machines in the data coverage card, and warn once per broken snapshot instead of every scan.
Fix release pinning in the one-line installer: tags download correctly, not only branches.
First public release of the AI Usage Dashboard for Omarchy.
Named history accounts with multiple folders, account comparisons, and filters.
Deduplicate mirrored history and flag conflicting account assignments.
API-value shares and tokens/value per recorded session.
Grok Build history, recorded API value, model calls, and weekly quota.
Gemini CLI, general OpenCode, Pi, and Oh My Pi history, with source-route breakdowns.
Detect active sources on first use and adapt layouts to the enabled providers.
Refresh Grok quota after login and request fresh limits on manual Refresh.
Reopen unmapped dashboard windows and focus the correct instance across workspaces.
Keep provider colors readable on light and dark backgrounds.
Wrap bar-widget provider chips when many sources are enabled.
One overview card per account, with optional monthly prices per provider or labelled account.
Daily and hourly charts split into one series per account when a provider has more than one, each in its own shade of the provider color, largest solid and the others dashed.
Labelled accounts read their own agent usage record by matching id or name, so a second Codex account shows its quota beside the current login.
OpenCode Go prices the full documented model table, doubles DeepSeek rates during peak hours, and falls back to OpenCode's recorded cost for unlisted models.
The Go card shows value used against each model's monthly allowance, including the DeepSeek V4.1 Flash 4x promo through Sep 20.
Price Codex gpt-5.3-codex-spark and mark codex-auto-review internal, clearing t