Zero setup detection
The desktop application looks for provider tools and logins already present on this device. It can begin with no OpenLimiter account and no copied credential, while every missing or uncertain reading stays visibly unknown.
What OpenLimiter does
OpenLimiter combines every quota window a supported provider exposes, shows how much is used and when it resets, and gives bounded routing advice to you and your coding agent. It is a meter and adviser. It never spends quota, changes a plan, or chooses a provider without you.
How discovery works
At launch, the desktop application performs a bounded scan of known locations. It does not crawl the disk, follow symbolic links, or send a discovery result anywhere.
- Windows checks AppData Roaming and Local. macOS checks Application Support and provider folders in the home directory. Linux checks XDG locations and provider folders in the home directory.
- Each provider becomes
present,installed_logged_outorabsent. Unknown quota is separate from detection and never becomes zero. - Distinct local profiles become distinct accounts. The interface exposes an opaque identity and never exposes a token, raw account identifier or credential path.
- A provider token is read again from its original file immediately before a provider request. A stale login tells you to reopen that provider CLI. OpenLimiter never mints or refreshes it.
- The automatic scan does not read Keychain. If a macOS tool keeps its login only there, it can appear installed but logged out. Manual entry remains available.
Supported providers and readings
The desktop application supports five provider families. Every row below names the reading and the source honestly.
| provider | what it reports | how it is read |
|---|---|---|
| Claude Code | Five hour session usage and seven day usage, with reset times. | The local Claude Code OAuth login and Anthropic usage endpoint. Claude Code statusline data remains a fallback. |
| Codex | The primary quota window, percent used, and its reset when the provider supplies one. | The local Codex login and an unsupported OpenAI usage endpoint. |
| Antigravity | The most binding quota bucket, percent used, and its reset. | The local Antigravity login and an unsupported Google quota endpoint. |
| OpenCode | The most binding rolling usage window and its reset countdown. | An existing browser session and an authenticated workspace page scrape. |
| OpenRouter | Credits used against total credits, including the amount in US dollars and no reset. | A key you supply and the documented OpenRouter credits API. |
Privacy boundary
Local mode is designed so OpenLimiter can advise without becoming another holder of your provider identity.
- Detection reads only bounded files in known provider locations on this device.
- A provider credential is sent only to the endpoint of the provider that issued it. It is never sent to OpenLimiter or another provider.
- Local mode sends zero telemetry, quota snapshots, diagnostics, prompts or identifiers to OpenLimiter.
- OpenLimiter only advises. It does not submit prompts, change subscriptions or route work by itself.
- OpenLimiter never creates, renews or silently repairs a provider token.
When a provider shows unknown
Unknown means no current reading passed every contract check. It is not zero usage and it is not proof that the subscription is empty.
- 1Open the provider CLI and confirm that it is installed and signed in. If the message says the login is stale, close and reopen that CLI so it can refresh its own credential.
- 2Return to OpenLimiter and rescan providers, then request a refresh for that account.
- 3If the provider recently limited requests, leave the cached reading in place and wait for the retry time. Repeated clicks do not bypass provider backoff.
- 4Check the source label. Private endpoints and authenticated pages can change without notice. A contract change intentionally stays unknown until the connector is updated.
- 5Use manual entry when automatic collection is unavailable. One blocked provider does not disable the others.