Her er 13 versioner af Ceiling, fra 3. august 2026 til den aktuelle 1.5.45. Hver version linker til udgiverens egne installationsfiler.
| Version | Dato | Størrelse | Filer |
|---|---|---|---|
| 1.5.45Nyeste | 14. oktober 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.45 keeps the floating bar from getting stuck off-screen after it is minimized. |
| 1.5.44 | 6. oktober 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.44 supports newer Antigravity CLI versions with an explicit --csrf_token flag and shows accurate sign-in and exhausted quota states. |
| 1.5.43 | 2. oktober 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.43 keeps every Overview provider reachable when the window is short and includes dependency and Windows compatibility maintenance. |
| 1.5.42 | 26. september 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.42 fixes blank main and Settings windows after WebView2 exits, redraws the taskbar capacity strip as space changes, and removes Start at Login during uninstall. |
| 1.5.41 | 25. september 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.41 restores OpenCode Go usage for accounts migrated to OpenCode's Console workspace.
## Highlights
- OpenCode Go reads usage from the current Console API, with legacy fallback where appropriate.
- The taskbar flyout remains readable when Windows reports a light taskbar color.
- The main window now recovers from a WebView2 browser process failure, completing the recovery work in 1.5.38.
- Keychain secrets persist through Windows Credential Manager.
- Antigravity errors identify the failed call, and its reset time displays as a countdown.
- WSL distros with a custom automount root can find Windows-side usage. |
| 1.5.38 | 16. september 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.38 keeps Codex usage reading correctly through OpenAI's latest response changes and recognizes the Antigravity CLI when Windows cannot read its process command line.
## Highlights
- Codex usage parsing handles the endpoint's renamed and moved fields, including the credit balance, the spend limit, the code-review meter, and Spark's weekly window.
- The Antigravity CLI is detected by image name even when its command line is unreadable.
- The taskbar flyout, Settings, and FloatBar windows rebuild after their WebView2 process exits instead of staying blank.
- The taskbar flyout no longer shows a strip of desktop under its last row.
- The Glance metric setting now drives the taskbar strip. |
| 1.5.36 | 23. august 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.36 is a maintenance release focused on safer local state and usage numbers you can trust.
## Highlights
- `codexbar usage --all-accounts` now fetches every configured Codex and Claude account with isolated errors and stable ordering.
- Running `codexbar` without a subcommand now opens the default usage view as documented.
- Desktop and server refresh intervals are honored, including response caching for `serve`.
- Detached Settings windows reopen where you left them, and concurrent or corrupt geometry writes no longer wipe other saved positions.
- Account isolation, Codex latest-session selection, quota ranking, and today's spend reporting are more accurate.
- Update status and progress are announced to assistive technology, with automated accessibility regression coverage now in CI.
## Security
Windows now rotates a `serve.token` that was exposed through unsafe file permissions instead of reusing the leaked secret.
## MCP compatibility
`session_cost_usd` is now `period_cost_usd`. The new `cost_period` field identifies the billing period represented by that amount.
Thanks @harshvardhan60792 for fixing clipboard controls that could report success after a failed copy in #381. |
| 1.5.35 | 22. august 2026 | — | 64-bit EXE (Inno Setup) Udgivelsesnoter## [Ceiling] 1.5.35 - 2026-08-22
Charts stops showing numbers it cannot stand behind. A month whose models have no published prices painted as an empty one, the busiest day on the activity heatmap could share a shade with the quietest, and a Codex session carried whatever calendar day it was first parsed on, so a DST change or a trip moved usage onto the wrong day. Two cards scanning at once could overwrite each other's index, and a price refresh landing mid-scan stamped old dollars as current for every card already in the file.
The rest is state a surface reported but could not actually reach. A settings or credentials write could run unserialized on a filesystem that cannot `flock`, Install and Restart could check a staged installer against a different release's digest, and dismissing an update mid-download un-dismissed itself on the next progress chunk. A machine reporting no home directory no longer reads Gemini credentials from — or writes refreshed Google tokens into — whatever directory it happened to start in.
Ceiling also asks for a GitHub star now. At most twice, ever, and only after a provider has actually reported a reading.
### Added
• **Ceiling asks for a GitHub star, at most twice ever.** A card in the bottom-right of the dashboard, and the only thing Ceiling has ever asked of anyone using it. The first ask waits until a provider has actually reported a reading and that reading has been on screen for twenty seconds, so it lands after the app has done something useful rather than during setup, when it would be asking to be paid before the work. The second, if the first went unanswered, waits for a later version to have shipped and for a week to have passed since the first, because a version bump the day after is still two asks in one week. Clicking through to GitHub ends it permanently; so does reaching the second ask. Later and the close button mean the same thing and never count as interest. It is not a Windows notification, it takes no focus and traps none, Escape closes it, and the only network call involved is opening the repository in your browser when you ask for it.
### Security
• **Gemini treats a missing home directory as not logged in.** With no `HOME` or `USERPROFILE`, Ceiling used the working directory as `~/.gemini`, so a checkout fixture could be read and then written back after a refresh. Both the credential read and the credential write now refuse that fallback, matching `client_config.json`.
### Fixed
• **Grok project names read from a Windows path no longer come back as the whole path.** A session's `cwd` is written by whichever machine ran Grok, so a Windows path reaches Ceiling on Linux and inside WSL. `Path::file_name` only treats `\` as a separator on Windows, so everywhere else a `cwd` of `C:\projects\personal\ceiling` was reported as a project literally named `C:\projects\personal\ceiling`, and the URL-encoded session folder split the same way. Both now split on either separator on every host. A Codex sessions directory joined onto a Windows root also keeps `\` instead of picking up the host's separator. Windows behaviour is unchanged.
• **A corrupted Claude de-duplication key no longer silently inflates Charts and Estimated API value.** The usage index treated invalid UTF-8 in a present `dedup_key` as "this record has no key", so the same transcript event could be counted twice if its counterpart still had one. Invalid UTF-8 now rejects the whole index the way a required string already does, and the next scan rebuilds it from the transcripts. A key that was never written is still encoded as the length sentinel, not as a failed decode.
• **A filesystem that cannot flock no longer writes settings unserialized.** The state-write lock treated every `flock` errno other than contention as "no lock needed" and continued, so an NFS/FUSE/SMB home without `lockd` let the tray and the CLI replace `api_keys.json` over each other. Only `ENOTSUP` — the filesystem saying it does not implement loc |
| 1.5.34 | 18. august 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.29 shows Cursor's on-demand spend as money on every surface that displays it, including the taskbar tile, its hover panel, the floating bar, and the Activity schedule, instead of as a percentage of a spend cap. A monthly quota can now raise a pace warning, and settings controls have accessible names that screen readers can reach. |
| 1.5.31 | 14. august 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.29 shows Cursor's on-demand spend as money on every surface that displays it, including the taskbar tile, its hover panel, the floating bar, and the Activity schedule, instead of as a percentage of a spend cap. A monthly quota can now raise a pace warning, and settings controls have accessible names that screen readers can reach. |
| 1.5.29 | 12. august 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.29 shows Cursor's on-demand spend as money on every surface that displays it, including the taskbar tile, its hover panel, the floating bar, and the Activity schedule, instead of as a percentage of a spend cap. A monthly quota can now raise a pace warning, and settings controls have accessible names that screen readers can reach. |
| 1.5.25 | 9. august 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.25 keeps Claude's taskbar tile focused on Session and Weekly capacity when model-only caps such as Fable are exhausted. It also prevents unreadable or future-version settings and credential stores from losing unrelated data, restricts plaintext custom Codex endpoints to real loopback hosts, preserves active token-account selection, and fixes reset countdown rounding. |
| 1.5.22 | 3. august 2026 | — | 64-bit EXE (Inno Setup) UdgivelsesnoterCeiling 1.5.22 fixes a usage-scaling bug where the first 1% of usage read as 100% on OpenCode, Qoder, Chutes, and Sakana. OpenCode Go monthly windows are now labeled Monthly. The Microsoft Store build submits again with normalized installer parameters. |