Home

Reserve: Know what you have left.

Reserve keeps Codex, Claude, Grok, Cursor, Copilot, Gemini, Z.ai, and Kimi Code capacity visible from your Mac menu bar: what remains, when it resets, and whether your current pace will last.

macOS 14 Sonoma or later · Universal 2 (Apple silicon and Intel) · MIT licensed

Always in the menu bar

The Reserve dashboard in light mode. Four cards show OpenAI Pro, Claude Max 20x, Grok SuperGrok Heavy, and Cursor Pro+ allowances with their reset times and pace projections. The Reserve dashboard in dark mode. Four cards show OpenAI Pro, Claude Max 20x, Grok SuperGrok Heavy, and Cursor Pro+ allowances with their reset times and pace projections.
The whole dashboard fits in one panel, with nothing to scroll. It follows your Mac's light or dark setting. Screenshot shows sample data.

What you get

Three numbers, and what they mean together.

A percentage on its own will not tell you whether you are about to be stopped mid-task. Reserve reads what each provider reports, compares it against how fast you are actually going, and leads with a single conclusion before you read a single card.

A row from the Reserve dashboard: OpenAI Pro, 76% left. A row from the Reserve dashboard: OpenAI Pro, 39% left.

Remaining capacity

How much is left

The share of your weekly allowance still available, read from each provider's own limits rather than estimated from your activity.

Two rows from the Reserve dashboard: 5-hour window, 86% left, resets at 2:44 PM; Sonnet weekly limit, 69% left, resets Thu 4:02 AM. Two rows from the Reserve dashboard: 5-hour window, 86% left, resets at 2:44 PM; Sonnet weekly limit, 69% left, resets Thu 4:02 AM.

Reset time

When it comes back

The exact day and time the window rolls over, with a live countdown, so a low number late in the week reads differently from a low number on Monday.

A capacity bar with a pace marker part way along it, above the line: 16% in reserve, 40% projected left at reset. A capacity bar with a pace marker part way along it, above the line: 21% deficit, runs out 2d 9h early.

Pace

Whether it will last

A marker on the bar shows where you ought to be right now. Reserve compares your rate against it and projects the outcome: in reserve, on pace, or running out, with the amount and the day.

Shorter windows sit underneath the weekly bar, so a healthy week can still warn you about this afternoon. Each card also shows whether that service is reporting problems, taken from its own official status page, so you can tell an outage from an exhausted allowance.

A closer look

Five views, drawn by the application itself from sample data rather than mocked up for this page.

Supported subscriptions

Eight plans, one clear view.

Reserve reads the subscriptions you already hold. You do not need all eight: turn off the ones you do not use and Reserve tracks the rest.

OpenAI Codex

Weekly allowance and the shorter session window, with the plan name Reserve reads back from your subscription.

Anthropic Claude

Weekly allowance, the shorter session window, and the separate model-specific weekly limit where your plan has one.

xAI Grok

The shared weekly allowance, plus its split across Grok's own tools when the subscription reports that breakdown.

Cursor

Cursor Models and Other Models allowances, whole-number percentages, and provider-reported account usage for individual Cursor accounts.

GitHub Copilot

Remaining limited allowances from the signed-in Copilot CLI. This connection is experimental until it has been checked against a paid account.

Gemini Beta

Google AI Pro and Ultra 5-hour and weekly limits for each model group, read from the Antigravity CLI, agy 1.1.11 or later.

Z.ai GLM Coding Plan Beta

5-hour and weekly limits. Connect it by pasting an API key from the international z.ai platform.

Kimi Code Beta

5-hour and weekly limits for the Kimi Code subscription. Connect it by pasting a Kimi Code API key.

Gemini, Z.ai, and Kimi Code are in beta. They have not yet been checked against real accounts, and Z.ai and Kimi read usage from endpoints their makers have not documented. If Reserve cannot read one of them, it says so instead of showing a wrong number. If something looks wrong, please open an issue on GitHub and describe what you saw, without your key, account name or email.

API accounts

What your API keys have spent, or have left.

Pay-as-you-go accounts get their own section, below the plan cards. In Settings > API, paste a key and Reserve reads that account's spend or remaining balance from the provider's own endpoint. Each row is off until you save a key, and opens to show everything that key reports.

OpenAI
Organization admin key. Spend from the Costs API, by billing line item.
Anthropic
Organization admin key. Spend from the Cost Report API, by model.
OpenRouter
The API key itself. Spend today, this week and this month, and the credit balance when the key is capped.
xAI
Management key. The prepaid balance, and spend against purchased credits when the transactions explain it.
TypeSafe
The API key. The models it can send and their documented input price, since TypeSafe publishes no spend endpoint.
DeepSeek
The API key. Remaining balance, split into granted and topped-up credit, and whether it still allows calls.
Moonshot
An API key from the Kimi API platform. Remaining USD balance, split into vouchers and cash.

Keys stay in the macOS Keychain on this Mac, and each one is sent only to the provider that issued it. OpenAI and Anthropic admin keys and xAI management keys can only read billing. OpenRouter, TypeSafe, DeepSeek, and Moonshot keys can also call models, so create one just for Reserve.

Local first

It runs on your Mac, and stays there.

Reserve has no account of its own and no server of its own. It uses the sign-ins and official helpers already present on your Mac, plus any API keys you paste, asks each provider for your limits over their own HTTPS endpoints, and reads bounded local aggregates to work out how much you have used.

  • No Reserve account, and no password is ever handed to Reserve. Signing in happens on the provider's own website, in your browser.
  • Reserve does not store prompts, responses or transcripts. Cursor is never read through its transcripts.
  • No browser automation, no hidden web views, and no reading of browser cookies.
  • No analytics and no telemetry. Reserve talks to the AI services you already pay for, their official status pages, and GitHub for update checks.
  • API keys you paste stay in the macOS Keychain and are sent only to the provider that issued them.
  • Before running a provider's command-line tool, Reserve checks every folder and link on the way to it, and skips anything another account on the Mac could have replaced.
  • Session and credential files are opened once and read only through that open file, so a file swapped mid-check is ignored.
  • Two small cache files hold aggregate limit snapshots and daily usage totals, capped at 100 KB and 12 MB.

Protected sign-ins stay behind macOS until you choose Allow usage access. Claude and Cursor can keep their credentials in Keychain; Reserve asks only for the specific access needed to refresh account data, keeps it in memory, and lets you turn access off again in Settings.

Requirements

What you need to run it.

Operating system
macOS 14 Sonoma or later
Architecture
Universal 2
Apple silicon
native
Intel
native
Licence
MIT
Price
free

Reserve uses official Codex, Claude, Grok, Cursor, Copilot, and Antigravity helpers for authenticated access. Open Settings > Providers and choose Connect beside a provider. Reserve first checks for an existing sign-in, then guides you through only the needed steps in one window. If a helper needs installation or an update, it explains the change and waits for your approval. Browser sign-in opens in your regular Chrome profile, or your default browser if Chrome is not installed. Cursor support is for individual accounts, not Teams or Enterprise Admin API keys. Gemini needs the Antigravity CLI, agy 1.1.11 or later. Reserve can install it, but you sign in with Google by running agy once in Terminal. Z.ai and Kimi Code have no helper; Connect asks for an API key instead.

Installation

One download, then one clear action.

  1. Download the disk image

    Use the download button above. It gives you Reserve.dmg from the latest GitHub release.

  2. Open the DMG

    Double-click Reserve.dmg in your Downloads folder. A window opens showing Reserve alongside a shortcut to your Applications folder.

  3. Drag Reserve to Applications

    Drag the Reserve icon onto the Applications shortcut in that window. Then eject the disk image.

  4. Open Reserve

    Launch it from Applications. Reserve appears in your menu bar, finds the providers you have, and starts reading your limits.

  5. Connect a provider

    Open Settings > Providers and choose Connect beside the provider. Reserve checks for an existing sign-in first, then handles helper setup or update, provider sign-in, required macOS permission, and a fresh usage check in one window. It asks before installing or updating, opens sign-in in your regular Chrome profile or default browser, and lets you reopen that page or cancel the connection. For Z.ai and Kimi Code, paste an API key instead.

Open source

MIT licensed, and readable end to end.

Reserve is released under the MIT licence. The full source is on GitHub: you can read exactly what it requests, what it stores, and what it never touches, and you can build it yourself rather than trusting the download.

The licence and third-party notices are bundled inside the application and readable from its About panel. Reserve uses Sparkle for signed app updates. The notices cover Sparkle, adapted implementation patterns, and the provider marks used inside the app.

Questions

Frequently asked.

Does Reserve need my passwords or API keys?
Reserve never asks for a password and never stores one. Choose Connect beside the provider in Settings > Providers and Reserve checks for an existing sign-in before opening the provider's own website in your regular Chrome profile, or your default browser if Chrome is not installed. Your password stays with the provider. API keys are needed only for the Z.ai and Kimi Code plans and for the optional API accounts. Each key stays in the macOS Keychain and is sent only to the provider that issued it.
Which providers does Reserve support?
Reserve supports OpenAI Codex, Anthropic Claude, xAI Grok, Cursor, GitHub Copilot, Gemini, the Z.ai GLM Coding Plan, and Kimi Code. Copilot support is experimental, and Gemini, Z.ai, and Kimi Code are in beta. Turn off the ones you do not use in Settings and they disappear from the dashboard and menu bar. Separately, it can measure OpenAI, Anthropic, OpenRouter, xAI, TypeSafe, DeepSeek, and Moonshot API accounts, each off until you save a key.
Can I connect a provider without Terminal?
Yes, except to sign in to Gemini: agy has no separate sign-in command, so run agy once in Terminal and sign in with Google there. For everything else, choose Connect beside the provider in Settings > Providers. Reserve explains any helper installation or update, asks for approval, opens the provider's browser sign-in, handles the required macOS permission, and waits for fresh usage before showing the connection as complete. The window stays available while a refresh runs, and you can reopen the browser page or cancel the connection.
How does Cursor usage work?
Cursor supplies the account totals. Reserve shows Cursor Models and Other Models allowances as whole-number percentages, plus provider-reported tokens and model totals for today and the last 30 days. It requests daily history separately and says Daily history unavailable when Cursor supplies totals without daily events.
Do I need all eight subscriptions?
No. Reserve tracks whichever supported services you have. Turn the others off in Settings and they disappear from the dashboard and menu bar.
Does it send my usage anywhere?
No. There is no analytics, no telemetry and no Reserve server. Network requests go to the AI services you already pay for, their official status pages, and GitHub for update checks. Cursor account totals come from Cursor's authenticated service and are not read from transcripts.
Will it slow my Mac down?
It is built not to. Reserve targets under 0.2% processor use and under 80 MB of memory while idle, measured on the packaged application before each release. Scheduled refreshes are skipped entirely in Low Power Mode.
How often does it check?
You choose: every 1, 5, 10, 15 or 30 minutes for provider limits. Service status is checked at most every 10 minutes, and local usage is counted every 30 minutes or immediately when you refresh by hand.
Is the estimated value a real bill?
No. Reserve estimates what your usage would have cost at published pay-as-you-go prices, using its own arithmetic, so treat it as a ballpark. The Insights view labels Cursor's provider-reported usage value separately from API-equivalent estimates.
Where does Reserve store data on my Mac?
In two files under ~/Library/Application Support/Reserve/. They hold daily totals and cached limit snapshots, capped at 100 KB and 12 MB. Deleting them clears cached history and current snapshots, but not your provider sign-ins.
Can I build it myself instead of downloading?
Yes. Clone the repository and run make run. You need the Apple Command Line Tools; there are no other build dependencies.

Know what you have left.

Free, open source, and it stays on your Mac.

macOS 14 Sonoma or later · Universal 2 · MIT licensed