$npx skillfedfor your agent
REPO

Codenotch's best trick is borrowing credentials your coding tools already stored

on: vinzdg/codenotch

Codenotch is a macOS app that pins a small pill-shaped notch to any screen edge and shows, in real time, how much of each coding assistant's usage limit you have consumed. It covers a wide range of providers: Claude Code, Cursor, Codex, GitHub Copilot, Grok, OpenCode, Command Code, DeepSeek, Antigravity, GLM, and both Ollama and LM Studio for local inference. Each gets a ring; hover the ring for reset windows, session status, and whatever detail that provider exposes.

The credential strategy is the most interesting design decision here. For most providers, Codenotch borrows whatever credential the tool already stored on your Mac — Claude Code's own keychain entry, Cursor's SQLite session, the GitHub CLI's auth token, Grok's ~/.grok/auth.json. You do not sign into Codenotch separately for those. DeepSeek is the explicit exception: it uses a WKWebView login flow and never touches your browser's cookies. The README is candid that this approach is fragile by nature — no vendor publishes a clean usage API, so every adapter reads from internal endpoints, local databases, or language server RPC calls that can change without notice. Failures degrade to a visible status (stale, needsAuth, error) rather than a fabricated percentage, which is the right call.

The local model support goes further than a simple "is Ollama running" check. For Ollama, an optional local relay on port 11435 lets the app measure tokens-per-second and capture live reasoning from models that support it — though this requires routing your ollama run commands through that relay rather than the default port. For LM Studio, the app reads the SDK socket and the server log directly, so it can show context utilization, speculative-decoding acceptance rates, and per-model request queues without any relay at all.

The session-notification feature is worth calling out. When an agent finishes or blocks waiting for input, the notch opens for five seconds and plays a sound. The README explains honestly why it raises the app rather than the specific terminal tab: agents only publish their process ID, and there is no general scripting interface across Terminal.app, iTerm2, Warp, and Ghostty. So it raises the app and names the session in the tooltip, leaving the last hop to you — a real constraint acknowledged plainly rather than papered over.

Multiple accounts per provider are supported for Claude Code and Codex via directory conventions (~/.claude-work, ~/.codex-personal, etc.), each getting its own ring. The architecture section notes that layout is computed in one-dimensional stack space regardless of screen edge, with a single NotchPlacement type handling the mapping back to screen coordinates — a clean separation that explains why four-edge placement works without duplicating layout logic.

Requires macOS 15 or later. A Windows port in Rust/Tauri 2 lives in the same repository. The app auto-updates via Sparkle with EdDSA signature verification.

A credential-borrowing usage monitor that reads from the same internal sources your coding tools do — honest about the fragility that entails.

Install it

Sources & links