statbar
v1.1.0
Published
Lightweight macOS menubar app for monitoring CPU, GPU, Memory, and local LLM servers.
Maintainers
Readme
StatBar
A lightweight, native macOS menubar telemetry app that monitors live system hardware stats (CPU E/P-cores, GPU utilization & memory, RAM breakdown) alongside local LLM server metrics (llama-server, Ollama, LM Studio).
When your local LLM server is offline, the LLM telemetry segment is auto-hidden and StatBar operates as a pure system monitor with zero overhead.
⚡ Features
- Multi-Segment Status Bar: Compact menubar glyph displaying real-time CPU, GPU, Memory, and optional LLM metrics.
- System Telemetry Panel: Live breakdown of Efficiency vs. Performance cores, Metal GPU utilization & VRAM, and Active/Wired/Compressed/Available RAM with a multi-color segmented memory bar.
- LLM Server Intelligence: Auto-probes local LLM endpoints. Displays active model name, context token usage, prompt & generation speed (t/s), and total token counts.
- Native Apple Aesthetics: Uses native
NSVisualEffectViewmaterials (.popover), dynamically matching Light Mode, Dark Mode, Clear Glass, and Tinted Glass wallpapers. - Zero Dock Footprint: Operates exclusively as a background status bar item (
LSUIElement) with configurable refresh intervals and Launch-at-Login support (SMAppService). - CLI Snapshot Flag: Run
swift run StatBar --onceto print a single telemetry JSON/snapshot directly tostdout.
🚀 Installation
Option 1: Via Homebrew (Recommended)
brew install coderhd/tap/statbarOr tap first:
brew tap coderhd/tap
brew install statbarOption 2: Via npm / npx
# Launch directly (installs to /Applications automatically)
npx statbar
# Or install globally
npm install -g statbarOption 3: Build from Source
git clone https://github.com/coderhd/system-stats-menubar-app.git
cd system-stats-menubar-app
./scripts/build-app.shThis compiles the release executable, assembles build/StatBar.app with icon assets, and installs it directly to /Applications/StatBar.app.
🗑️ Uninstallation
Via Homebrew
brew uninstall statbarVia npm / npx
npx statbar uninstall
# or
npm uninstall -g statbar🤖 Local LLM Server Setup
StatBar automatically detects local LLM server metrics. For full context & token speed tracking with llama-server, start the server with --metrics and --slots enabled:
llama serve --metrics --slotsStatBar connects to http://127.0.0.1:8080 by default. You can customize the server host, port, refresh rate, and optional API Key in StatBar Settings (accessible via right-click).
⚙️ Usage & Settings
- Left Click: Open/close the telemetry popover panel.
- Right Click: Open context menu to access Settings... or Quit StatBar.
- CLI Snapshot Mode:
swift run StatBar --once
🛠️ Development
# Debug build
swift build
# Run unit tests
swift test
# Package release ZIP & SHA256
./scripts/package-release.sh📄 License
StatBar is open-source software licensed under the MIT License.
