Providers
Claude Code and Codex are providers. A provider is the unit BlackFlare turns on and off: enabling one gives you its menu section, its usage numbers, and its notifications; disabling it stops all three at once.
Detection and the master toggle
On every launch BlackFlare checks whether ~/.claude and ~/.codex exist and
seeds each provider’s enabled state from that. Detection only ever fills in a
state you have not set. Once you toggle a provider by hand, detection stops
overriding you — install or remove a CLI afterwards and your choice stands.
Manage them in Settings… → Providers. Each enabled provider shows:
- its Binary path, probed from the usual install locations (no shell is launched to find it)
- its Config directory
- any custom model IDs you have added
- for Claude, the models.dev catalog source and a Refresh button
A disabled provider collapses to a single toggle.
The switch tab
When both providers are enabled, the menu shows a Claude | Codex capsule at the top (Claude first) and everything below it follows the selection — including the percentage next to the menu bar icon. With one provider enabled there is no tab, because there is nothing to switch between. With none, the menu points you at Settings → Providers.
Under the tab sits a header with the provider name, an “Updated Xm ago” timestamp, and a plan badge:
- Claude — 20x / 5x / Pro / Free, taken from the rate-limit tier in Claude
Code’s own cached profile at
~/.claude.json, read-only. The usage endpoint andclaude auth statusonly report a tier-less “max”, which is why the cached profile is the source. - Codex —
plan_typefrom its rollout files.
If the plan can’t be determined, the badge is hidden rather than guessed.
What counts as which provider
The Claude Desktop app is not a provider. It keeps no user-level defaults file to switch and its chats leave no local event to notify on, so there is nothing for BlackFlare to hook into. Its usage does still show up in your numbers — session and weekly limits are account-wide.
The ChatGPT desktop app is covered by the Codex provider. It embeds the
Codex runtime and writes to the same ~/.codex files, so BlackFlare sees its
sessions. Note the caveat in Switching models: the
desktop app sends model and effort per thread from its own picker and ignores
config.toml.