🎉 Stable Release v3.5.82
Multi-Architecture Binaries
Download the appropriate binary for your platform:
- Linux x86_64:
better-ccflare-linux-amd64 - Linux ARM64 (Raspberry Pi 3/4/5, Oracle Cloud ARM, AWS Graviton):
better-ccflare-linux-arm64 - macOS Intel:
better-ccflare-macos-x86_64 - macOS Apple Silicon:
better-ccflare-macos-arm64 - Windows x86_64:
better-ccflare-windows-x64.exe
Installation
# Linux x86_64
wget https://github.com/tombii/better-ccflare/releases/download/v3.5.82/better-ccflare-linux-amd64
chmod +x better-ccflare-linux-amd64
./better-ccflare-linux-amd64
# macOS Apple Silicon (ARM64)
curl -L -o better-ccflare-macos-arm64 https://github.com/tombii/better-ccflare/releases/download/v3.5.82/better-ccflare-macos-arm64
chmod +x better-ccflare-macos-arm64
xattr -d com.apple.quarantine better-ccflare-macos-arm64 # Required for unsigned binaries
./better-ccflare-macos-arm64macOS Users: The xattr command is required to bypass Gatekeeper for unsigned binaries. If you prefer not to run unsigned binaries, install from source instead.
Or install via npm: npm install -g better-ccflare@v3.5.82
What's Changed
🚀 Features
- feat(server): start free usage polling for Codex accounts (
0263759b) - feat(codex): make the manual usage refresh free-first (
2a2129a7) - feat(codex): decode the ChatGPT account id from the OAuth token (
420f93b0) - feat(codex): fetch usage from the ChatGPT backend usage endpoint (
5503fca2) - feat(codex): poll usage through the shared usage fetcher (
d238d575)
🐛 Bug Fixes
- fix(codex): stop minting a 0% usage window for a window the headers did not report (
07128129) - fix(codex): discard a usage poll that lost the race against the traffic path (
074160cf) - fix(codex): let the poller follow the configured Codex rollover window (
0a0b98c1) - fix(server): do not warn when a new account's provider is not pollable (
12962b7c) - fix(http-api): start usage polling as soon as an account is created (
14b99c69) - fix(proxy): keep Alibaba Coding Plan payloads out of the flat-window branch (
190a8541) - fix(codex): fire session resets only on a real window rollover, on the poll path too (
2d793e81) - fix(codex): advance the cache generation on teardown so a late poll cannot resurrect cleared usage (
45c4e2ea) - fix(http-api): start polling for a device-flow account without blocking its completion status (
4dad8cd0) - fix(http-api): stop minting a 0% Codex window when recovering usage from stored payloads (
55e3c121) - fix(codex): make the manual refresh honour rollovers and preserve an unconsumed elapsed reset (
583e0d30) - fix(codex): treat a usage-endpoint 429 as rate-limited on both the poll and refresh paths (
5d9dbaeb) - fix(codex): never default a missing Codex usage percentage to 0 (
6ffe20aa) - fix(server): keep polled Codex usage out of rate_limit_reset (
7770c33f) - fix(codex): never throw on an out-of-range reset timestamp in the usage payload (
874292c9) - fix(codex): keep the usage-endpoint window slotting identical to the header parser (
a1aafb12) - fix(server): stop toggling pause state while refreshing tokens for usage polling (
ab4e6514) - fix(http-api): let the Codex refresh button start usage polling (
af79e9ef) - fix(dashboard): show the Codex 5-hour bar when the account reports one (
f2bcce73)