brink
Health Gecti
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 31 GitHub stars
Code Basarisiz
- rm -rf — Recursive force deletion command in build.sh
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
Know when you're on the brink — Claude Code & Codex usage limits on the edge of your Mac screen
Brink
Know when you're on the brink. A tiny macOS panel that lives on the right
edge of your screen and shows your Claude Code and Codex usage limits
at a glance.
Move the mouse to the thin strip on the right edge → the panel slides out.
Hover a ring → a card shows the session limit, weekly limits and reset times.
No Dock icon, no menu bar clutter. Just the edge.
Features
- Three looks: Black, Liquid Glass and System. On macOS 26+ the glass is
Apple's real, adaptive Liquid Glass (.glassEffect): it turns light or dark from
what's behind it, so type stays legible over a white web page and a dark wallpaper
alike. On macOS 13–15 it falls back to a frostedNSVisualEffectViewblur. - Notch-style tab that flares into the screen edge; rings scale on hover; the detail card glides between rings
- Notifications when a limit fills up — and again the moment it resets (scheduled for the reset time, so it arrives even if the app is idle)
- 10 languages — follows your macOS language automatically (English, Türkçe, Deutsch, Français, Español, Português (Brasil), Italiano, 日本語, 简体中文, 한국어); override in the menu
- Rings for each provider, colored by usage (green → yellow → red; Claude ring in Claude orange)
- Detail card with Current session, All models and per-model weekly limits (e.g. Fable / Opus / Sonnet)
- Auto-refresh every 2 minutes, manual refresh from the context menu
- Launch at login toggle (System Settings → Login Items compatible)
- Works with whatever CLIs you already have installed — no API keys, no accounts
Requirements
- macOS 13 Ventura or later
- Claude Code and/or Codex CLI, logged in
- To build from source: Xcode Command Line Tools (
xcode-select --install)
Install
Download
Grab Brink.dmg from the latest release, open it and
drag Brink to Applications.
The app is not yet notarized. On first launch macOS will complain about an
unidentified developer: right-click → Open, or allow it in
System Settings → Privacy & Security.
Build from source
git clone https://github.com/semihtalii/brink.git
cd Brink
./build.sh
open dist/Brink.app
build.sh produces both dist/Brink.app and dist/Brink.dmg.
First launch
macOS will ask once:
Brink wants to use your confidential information stored in "Claude Code-credentials" in your keychain.
Click Always Allow. This is Claude Code's own login token; Brink reads it
to ask Anthropic for your usage numbers. It is never sent anywhere else.
Usage
| Action | Result |
|---|---|
| Move mouse to right edge | Panel slides out |
| Hover a ring | Detail card |
| Right-click panel or card | Refresh now · Providers · Appearance · Language · Launch at login · Notifications · Test notification · Quit Brink |
| Move the mouse far from the edge | Panel folds away by itself |
If a CLI is not installed or not logged in, its ring shows DEMO data so you
can still see the UI.
How it works
- Claude — reads the OAuth access token Claude Code stores in the macOS
Keychain (Claude Code-credentials) or in~/.claude/.credentials.json, then
callsapi.anthropic.com/api/oauth/usage— the same request Claude Code makes
for its/usagecommand. - Codex — reads the token in
~/.codex/auth.jsonand callschatgpt.com/backend-api/wham/usage.
Security & privacy
- Tokens are only ever sent to Anthropic's / OpenAI's own API hosts over HTTPS.
There is no telemetry, no third-party server. - Brink caches only the short-lived access token and its expiry in
~/Library/Application Support/Brink/credentials.json(mode0600) so the
Keychain prompt appears once rather than every refresh. It never stores or
uses refresh tokens, and it never refreshes tokens on your behalf — so it
cannot log you out of Claude Code. - When the cached token expires, Brink re-reads Claude Code's own store.
Opening Claude Code once is enough to get a fresh token.
Caveats
- These usage endpoints are not official, documented APIs. If Anthropic or
OpenAI change the response shape, the parsers inClaudeProvider.swift/CodexProvider.swiftwill need a small update. PRs welcome. - The panel attaches to the main display only (v1).
When not to use this
- You want numbers inside the terminal or a status line → look at CLI tools such as
llmquota or ccusage. - You need token-level cost accounting → this only shows the percentage windows
the vendors expose. - You're on Linux/Windows → Brink is macOS-only (NSPanel + Keychain).
How Brink compares
| Brink | llmquota | ccusage | |
|---|---|---|---|
| Form | Edge panel (GUI) | Terminal TUI | Terminal report |
| Providers | Claude Code, Codex | Claude, Codex, Cursor, Grok… | Claude Code |
| Setup | Open the app | Node 22 + npm | Node + npm |
| Needs API key | No | No | No |
| Always visible | Hover the edge | Only while running | Only while running |
Project layout
Package.swift Swift Package (macOS 13+)
build.sh build → .app + .dmg
Sources/Brink/
main.swift entry point (accessory app, no Dock icon)
PanelController.swift edge panel + detail card windows (NSPanel)
Views.swift SwiftUI: rings, strip, detail card
Models.swift data model, color scale, refresh store
Theme.swift Black / Liquid Glass / System palettes + blur surface
LaunchAtLogin.swift SMAppService wrapper
Notifier.swift limit-reached / reset notifications (UserNotifications)
L10n.swift localization lookup + language override
Resources/ provider logos, <lang>.lproj/Localizable.strings
ClaudeProvider.swift Claude usage source
CodexProvider.swift Codex usage source
Adding a provider (Cursor, Gemini CLI, …) means implementing theUsageProvider protocol and appending it to the list in main.swift.
Adding a language is one file: copy Resources/en.lproj/Localizable.strings
to <code>.lproj/, translate the right-hand side, and add the code toL10n.available and build.sh's CFBundleLocalizations.
For design work or screenshots, BRINK_PREVIEW=1 dist/Brink.app/Contents/MacOS/Brink
starts the app expanded with the first card open.
Credits
The edge-panel design is based on a concept shared by
@hivinz_ —
original post.
Brink is an independent, open-source implementation of that idea; all code is
original. Claude and OpenAI logos belong to Anthropic and OpenAI respectively and
are used only to identify each provider.
License
MIT © Semih Tali
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi