Lagrange Widget 1.2.0
Verified against Antigravity CLI 1.1.22.
Google's quota endpoint answers in fractions — how much of a window is left — and never in tokens. So this release reads the tokens where they actually exist: Antigravity writes one SQLite file per conversation, and every model turn in it records what that turn cost. The protobuf field numbers are not documented anywhere; they were confirmed against agy -p --output-format json, whose usage block the per-turn readings reproduce to the token.
Added
Tokens, per account, per quota window. Every card says what that account sent and received inside each window, with an All accounts card adding the fleet up. lagrange usage prints the same on the command line, with --by-day [N] and --by-model.
Attribution by account. Antigravity has one credential slot per machine and never writes down whose it is — but Lagrange is what moves it. It keeps a timeline of which account was loaded when and attributes each turn to whoever paid for it. Work from before the ledger existed is reported as unattributed rather than assigned to a guess.
Context depth. How full the last conversation's context window is, as a bar. Quota says how much of the week is left; this says how close the conversation in the console is to being compacted.
Reset times. Each window now shows when it actually refills beside the countdown — the clock time if that lands today, a short date (Sep 4) if it does not.
Account order and auto-switching. account_priority sets the order accounts are used in; with auto_switch on, Lagrange loads the next account with headroom once the loaded one's five-hour window is nearly spent. Nothing is interrupted — the running console finishes on the account it started with. Off by default.
Changed
A new look. Deep-space palette, gradient meters over a ticked track, a star field behind the title and a horizon line that pulses when fresh figures land. All of it drawn with Tk primitives — no images, no dependencies — and "effects": false leaves the layout drawn flat and completely still.
Rounded corners, via a window region. (DWM's own corner preference is asked for first, but an overrideredirect window frequently is not one DWM frames.)
Compact mode is a heads-up display, and it resizes. The tightest window as one large number, meters per model group, tokens spent in the last five hours, context depth. Drag its edge or corner: the meters stretch with it, the size is remembered, and short-and-wide switches to a strip layout that sits along the top of a screen. Each size keeps its own position, and the window grows from the corner it is parked against instead of off the screen.
The account list scrolls when it is taller than the work area, so nothing is reachable only by dragging the window off the desktop.
Fixed
- A dropped HTTPS connection no longer looks like a broken account: every request is retried, and a request that still fails reports one line while the card keeps the last figures Google actually gave.
- A network blip during OAuth client validation no longer ends in "no credentials were accepted" on a good install.
Notes
Reading Antigravity's files is incremental and read-only, and the ledger stores counts, never content. A first scan of five hundred conversations takes about a second and a half; every scan after that is negligible. If Antigravity is not installed or its files move, the quota bars draw exactly as before.
Downloads
Lagrange-Widget-1.2.0-win-portable.exe |
One file. Put it anywhere and run it. |
Lagrange-Widget-1.2.0-win-folder.zip |
Unzip and run Lagrange Widget.exe inside. Starts faster. |
Neither is signed, so SmartScreen will ask once — More info → Run anyway.