░█▀▀░█░░░█▀█░█░█░█▀▄░█▀▀░░░█░█░█▀▀░█▀█░█▀▀░█▀▀
░█░░░█░░░█▀█░█░█░█░█░█▀▀░░░█░█░▀▀█░█▀█░█░█░█▀▀
░▀▀▀░▀▀▀░▀░▀░▀▀▀░▀▀░░▀▀▀░░░▀▀▀░▀▀▀░▀░▀░▀▀▀░▀▀▀
╔═══════════════════════════════╗
║ SYSTEM TRAY USAGE MONITOR ║
╚═══════════════════════════════╝
> ESTABLISHING NEURAL UPLINK TO ANTHROPIC SERVERS...
> CONNECTION SECURED :: MONITORING ACTIVE
🔥 Watch your tokens burn in real-time. Your wallet weeps silently. 🔥
Project Page: https://claude-usage.elevatech.xyz
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ Claude Usage is a system tray application that monitors your │
│ Claude Code API consumption. Tracks token burn rate across models. │
│ │
│ > No browser required │
│ > Real-time progress bars │
│ > Multi-model breakdown (Opus, Sonnet) │
│ > Reset countdown timers │
│ > Works on Linux, Windows, macOS │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
> SCANNING TARGET ARCHITECTURES...
> [OK] COMPATIBILITY CHECK COMPLETE
| PLATFORM | ARCH | STATUS | PACKAGE |
|---|---|---|---|
| Windows | x64 | [SUPPORTED] |
claude-usage-windows-amd64.zip |
| macOS | Universal | [SUPPORTED] |
Claude-Usage-*.dmg |
| macOS | Intel | [SUPPORTED] |
claude-usage-darwin-amd64 |
| macOS | Apple Silicon | [SUPPORTED] |
claude-usage-darwin-arm64 |
| Linux | x64 | [SUPPORTED] |
claude-usage-linux-amd64 |
| Linux | ARM64 | [SUPPORTED] |
claude-usage-linux-arm64 |
> DESKTOP ENVIRONMENT SCAN:
├─ [OK] KDE Plasma
├─ [OK] GNOME (requires AppIndicator extension)
├─ [OK] XFCE
├─ [OK] Cinnamon
├─ [OK] MATE
├─ [OK] Budgie
└─ [OK] Any DE supporting StatusNotifierItem
╔══════════════════════════════════════════════════════════════════════════════╗
║ > BINARY PACKAGES AVAILABLE AT: ║
╚══════════════════════════════════════════════════════════════════════════════╝
https://github.com/utajum/claude-usage/releases
1. Download claude-usage-windows-amd64.zip from releases
2. Extract the ZIP file
3. Right-click install-windows.ps1 → "Run with PowerShell"
4. Find "Claude Usage" in Start Menu
Manual Installation:
# Or run from PowerShell directly:
powershell -ExecutionPolicy Bypass -File install-windows.ps1
# To uninstall:
powershell -ExecutionPolicy Bypass -File install-windows.ps1 -UninstallWhat gets installed:
%LOCALAPPDATA%\Programs\claude-usage\claude-usage.exe- Start Menu shortcut
- Startup shortcut (autostart on login)
# Option 1: Download DMG (recommended)
1. Download Claude-Usage-*.dmg from releases
2. Open the DMG file
3. Drag "Claude Usage" to Applications folder
4. Right-click → Open (first time only, to bypass Gatekeeper)# Option 2: Command line install
curl -sL https://github.com/utajum/claude-usage/releases/latest/download/claude-usage-darwin-arm64 -o claude-usage
chmod +x claude-usage
./claude-usageEnable autostart:
# Copy the LaunchAgent plist (from source repo)
cp assets/macos/com.github.utajum.claude-usage.plist ~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/com.github.utajum.claude-usage.plistOne-liner install (recommended):
curl -sL https://raw.githubusercontent.com/utajum/claude-usage/master/scripts/install-linux.sh | bashThis automatically:
- Detects your architecture (x64 or ARM64)
- Downloads the latest release
- Installs to
~/.local/bin/ - Creates desktop entry (shows in applications menu)
- Enables autostart on login
Install options:
# Install without autostart
curl -sL https://raw.githubusercontent.com/utajum/claude-usage/master/scripts/install-linux.sh | bash -s -- --no-autostart
# Install without desktop entry
curl -sL https://raw.githubusercontent.com/utajum/claude-usage/master/scripts/install-linux.sh | bash -s -- --no-desktop
# Uninstall
curl -sL https://raw.githubusercontent.com/utajum/claude-usage/master/scripts/install-linux.sh | bash -s -- --uninstallManual download:
# x64
curl -sL https://github.com/utajum/claude-usage/releases/latest/download/claude-usage-linux-amd64 -o claude-usage
# ARM64
curl -sL https://github.com/utajum/claude-usage/releases/latest/download/claude-usage-linux-arm64 -o claude-usage
chmod +x claude-usage
./claude-usageBuild from source:
git clone https://github.com/utajum/claude-usage
cd claude-usage
make install-linux # Full install with desktop integration
# or
make install # Binary onlyOpenCode Support:
Claude Usage also supports OpenCode credentials on Linux:
- Right-click the tray icon and click "Source: Claude Code" to toggle to OpenCode
- Credentials are read from
~/.local/share/opencode/auth.json - The app auto-detects available sources on first run
- If only OpenCode credentials exist, it will be used by default
> HOVER OVER TRAY ICON TO ACCESS TELEMETRY FEED
Tooltip displays real-time consumption data:
┌────────────────────────────────────┐
│ CLAUDE USAGE │
│ Plan: Pro (5x) │
│ STATUS: THROTTLED │
│ ▕████████░░▏ 80% 2h 15m ◀ │
│ ▕██████░░░░▏ 60% 3d 5h │
└────────────────────────────────────┘
LEGEND:
├─ First bar :: 5-hour rolling window
├─ Second bar :: Weekly allocation
├─ ◀ marker :: Active rate limiter
└─ Time :: Reset countdown
> SCANNING LOCAL FILESYSTEM FOR CLAUDE CREDENTIALS...
The app reads your Claude Code credentials to fetch real-time rate limit data from the API:
| OS | CREDENTIALS FILE |
|---|---|
| Linux | ~/.claude/.credentials.json |
| macOS | ~/.claude/.credentials.json |
| Windows | C:\Users\<username>\.claude\.credentials.json |
> DATA FLOW:
├─ [1] Read OAuth token from .credentials.json
├─ [2] Call Anthropic API for real-time rate limits
└─ [3] Display usage % and reset timers
> PREREQUISITES:
├─ [REQUIRED] Claude Code CLI installed and logged in
└─ [REQUIRED] Valid credentials file with OAuth token
Note: The stats-cache.json file is only used as a fallback when API data is unavailable.
> INITIATING BUILD SEQUENCE...
# Clone repository
git clone https://github.com/utajum/claude-usage
cd claude-usage
# Build for current platform
make build
# Or cross-compile for all targets
make build-all
# Generate icon assets
make generate-icons
# Platform-specific packaging
make build-macos-app # Creates .app bundle (macOS only)┌─────────────────────────────────────────────────────────────────────────────┐
│ DEPENDENCY VERSION STATUS │
├─────────────────────────────────────────────────────────────────────────────┤
│ Go 1.22+ [REQUIRED] │
│ CGO enabled [REQUIRED for macOS/Windows] │
│ UPX 4.0+ [REQUIRED for optimized builds] │
│ External libs none [PURE GO BUILD on Linux] │
└─────────────────────────────────────────────────────────────────────────────┘
> LOADING CONFIG PARAMETERS...
Config file locations:
| OS | CONFIG_PATH |
|---|---|
| Linux | ~/.config/claude-usage/config.json |
| macOS | ~/Library/Application Support/claude-usage/config.json |
| Windows | %APPDATA%\claude-usage\config.json |
{
"refresh_interval_seconds": 300
}> DEFAULT REFRESH RATE: 300 seconds (5 minutes)
make autostart # Enable persistence
make autostart-remove # Disable persistenceThe installer automatically creates a Startup shortcut. To manage manually:
Location: %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\Claude Usage.lnk
# Enable
launchctl load ~/Library/LaunchAgents/com.github.utajum.claude-usage.plist
# Disable
launchctl unload ~/Library/LaunchAgents/com.github.utajum.claude-usage.plistOr via System Settings → General → Login Items
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ [1] READ ──► Parse ~/.claude/stats-cache.json │
│ │
│ [2] PROCESS ──► Calculate token consumption per model │
│ │
│ [3] COMPUTE ──► Aggregate weekly totals (Monday-Sunday cycle) │
│ │
│ [4] RENDER ──► Generate dynamic tray icon based on usage % │
│ │
│ [5] DISPLAY ──► System tray with hover tooltip │
│ │
│ [6] LOOP ──► Auto-refresh every 5 minutes │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
LINUX:
├─ Verify DE supports StatusNotifierItem
├─ GNOME: Install AppIndicator extension
└─ Check system tray is enabled
WINDOWS:
├─ Check system tray overflow area (click ^ arrow)
├─ Right-click taskbar → Taskbar settings → System tray icons
└─ Enable "Claude Usage" to always show
MACOS:
├─ Check menu bar (may be hidden by notch on newer Macs)
└─ Try Bartender or similar app to manage menu bar items
ALL PLATFORMS:
└─ Confirm Claude Code is installed and operational
├─ Execute 'claude' command at least once
├─ Verify ~/.claude/stats-cache.json exists
└─ Check file permissions
make help # Show all available targetsDevelopment:
make build - Build optimized (stripped + UPX, ~5MB)
make build-fast - Build stripped only, no UPX (~7.5MB)
make build-debug - Build with debug symbols (~12MB)
make run - Build and run
make test - Run tests
make generate-icons - Generate icon assets
Installation (Linux):
make install - Install binary to ~/.local/bin
make install-linux - Full install (binary + desktop + autostart)
make desktop-install- Install desktop entry (app menu)
make autostart - Enable autostart on login
make uninstall - Remove everything
Installation (macOS):
make install-macos - Install .app bundle + autostart
make uninstall-macos- Remove app and autostart
Cross-compilation:
make build-linux - Build for Linux (amd64, arm64)
make build-windows - Build for Windows (amd64)
make build-macos - Build for macOS (Intel, Apple Silicon)
make build-macos-app- Build macOS .app bundle
make build-all - Build for all platforms
> INITIATING DONATION PROTOCOL...
> CAFFEINE LEVELS: CRITICALLY LOW
┌─────────────────────────────────────────────────────────────────────────────┐
│ │
│ If this tool saved you from rate limit anxiety, consider fueling │
│ the development with some caffeinated tokens. │
│ │
│ > Every coffee = More features │
│ > Every coffee = Faster bug fixes │
│ > Every coffee = Developer happiness++ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
MIT License
Permission granted to copy, modify, distribute.
No warranty. Use at your own risk.
╔══════════════════════════════════════════════════════════════════════════════╗
║ ║
║ ░▒▓█ CONNECTION TERMINATED :: END OF TRANSMISSION █▓▒░ ║
║ ║
║ > Stay connected to the grid ║
║ > Monitor your burn rate ║
║ > Trust no one. Especially your token consumption. ║
║ ║
╚══════════════════════════════════════════════════════════════════════════════╝
Project Page: https://claude-usage.elevatech.xyz
> SESSION_END :: 0x00000000

