Getting Started

AIMeter is a macOS menu bar app that tracks quota across your AI subscriptions and routes Claude Code between accounts and backends. Click the menu bar icon for a quick popover, or open the full dashboard for analytics, profiles, and routing controls.

Requirements

  • macOS 14 (Sonoma) or later
  • Claude Code installed and signed in (for the Claude provider)

Installation

  1. Download the latest AIMeter.dmg from the downloads page.
  2. Open the DMG and drag AIMeter.app to /Applications.
  3. AIMeter appears in your menu bar.
AIMeter checks for updates on launch. You can also trigger a check from Settings → Check for Updates.

Shell Setup

Source the AIMeter shell helper to enable the CLI Switcher and show running claude sessions in the dashboard.

zsh (default on macOS)

echo 'source ~/.claude/aimeter/shell-init.sh' >> ~/.zshrc
source ~/.zshrc

bash

echo 'source ~/.claude/aimeter/shell-init.sh' >> ~/.bashrc
source ~/.bashrc

Providers

AIMeter tracks 11 providers. Open the dashboard, pick a provider, and follow its sign-in flow.

Claude
Reuses Claude Code login. Add more accounts via in-app sign-in.
Codex (ChatGPT)
Sign in with ChatGPT through your browser.
GitHub Copilot
Reads your gh CLI login. Run gh auth login first.
GLM (z.ai)
Paste an API key from z.ai.
Kimi (Moonshot)
Paste an API key from moonshot.ai.
Kimicode
Paste a Kimi coding-tier API key.
MiniMax
Paste an API key from minimax.io.
OpenRouter
Paste an API key from openrouter.ai.
Synclaude
Paste an API key from synthetic.new.
DeepSeek
Paste an API key from deepseek.com.
Xiaomi MiMo
Paste an API key from xiaomimimo.com.

Claude Profiles

A profile is a named Claude account. Use profiles to keep Personal and Work accounts separate, each with its own quota tracking and routing.

Adding a profile

  1. Open the dashboard → Routing → Claude.
  2. Click Add Profile and sign in with the second account.
  3. Give it a slug like work and a label. Optionally mark it as default.

Token borrow

If a profile’s quota runs out mid-flow, flip the Borrow default’s token toggle on its card. The next clauderun keeps the same project routing but uses the default profile’s quota instead.

Folder Routing

Pin a directory to a Claude profile with direnv. Any claude run from that directory uses the matching profile automatically:

# ~/work/.envrc
export ANTHROPIC_BASE_URL="http://127.0.0.1:2456/work"

# ~/personal/.envrc
export ANTHROPIC_BASE_URL="http://127.0.0.1:2456/personal"

No token export, no env clutter — cd into the project and the right account is already attached. Quota tracking stays on whether routing is on or off.

CLI Switcher

Run Claude Code on any backend with one command. Each wrapper uses your existing claudeCLI — same agents, same memory, same prompts — but swaps the underlying model.

$ kimi        # Kimi K2 Thinking
$ kimicode    # Kimi Code
$ glm         # GLM 5.1
$ minimax     # MiniMax M2.7
$ openrouter  # Nemotron 120B (free)
$ synclaude   # Synthetic Claude
$ deepseek    # DeepSeek V4 Pro
$ mimoclaude  # MiMo V2.5 Pro
The wrappers need AIMeter running and the matching provider configured. If a provider isn’t set up, its wrapper tells you so and exits.

Privacy

Quota data is fetched directly from each provider. AIMeter doesn’t collect telemetry, doesn’t require an account, and only talks to the internet for the providers you connect and for app update checks.

Tokens live in the macOS Keychain. Local app data lives in ~/.config/aimeter/ (quota history) and ~/.claude/aimeter/ (shell helper + provider settings).

Uninstall

  • Delete AIMeter.app from /Applications.
  • Remove ~/.config/aimeter/ and ~/.claude/aimeter/.
  • Remove the source ~/.claude/aimeter/shell-init.sh line from your shell rc file.
  • Search AIMeter in Keychain Access.app and delete the entries.