Product

Every agent, every model, every dollar — in one calm console.

OpenBurnBar reads what your agents already leave behind on disk and turns it into a coherent picture: today's burn, this week's pattern, this month's budget, every session you ran, every quota window you're about to hit.

Tracking

Cost, tokens, quota — local and live.

Numbers come from the vendor's own API or local logs. Confidence is labeled on every row.

  • Reads logs, not API keys

    OpenBurnBar reads the JSONL crumbs Claude Code, Codex, Factory and friends drop on disk. Your API keys never leave the providers you already trust.

  • Cost and tokens — today, this week, this month, all-time

    Real numbers. Cost is exact where the vendor returns it, computed where they don't. Confidence is labeled on every row.

  • Quota — distinct from spend

    Five-hour windows for Claude Code and Codex. Weekly for Kimi. Premium interactions for Copilot. Per-model for MiniMax. Plan-used USD for Cursor. Refresh on tap.

  • Insights that learn your rhythm

    InsightEngine notices when spend spikes, a new model shows up, a cache lands, or a quota window is about to close. Daily digest at the time you choose.

Hermes

An assistant that knows your data.

Two runtimes share one identity. Stateless per-turn against a CLI subprocess for quick answers, or multi-turn against a local Hermes Gateway for deeper sessions — both grounded in your own OpenBurnBar SQLite.

  • Hermes — chat over your own data

    An on-device assistant that knows your sessions, providers, models, and recent runs. Two modes — Local Index (stateless, CLI-backed) and Hermes Gateway (multi-turn, OpenAI-shaped, runs locally).

  • Conversation Atoms

    Every entity Hermes mentions — cost, session, provider, model, window, tool, project — becomes a tappable inline chip that opens the matching native detail view.

  • Chart Studio — answers as charts

    Hermes streams JSON envelopes that render to 10 native Swift Charts kinds and sandboxed Mermaid diagrams on iOS and iPadOS.

Control plane

One daemon, every surface.

The daemon owns provider routing, quota refresh, retrieval, projects, missions, and a JSONL run journal you can replay. The CLI scripts it. Every other surface speaks to it.

  • Daemon-first control plane

    A launchd-managed local daemon owns routing, quota, retrieval, projects, missions, and replay. Every surface — Mac, iOS, Cursor, CLI — talks to it.

  • openburnbar — a real CLI

    health · controller · questions · followups · missions · mission-approve · simulator-runs · simulator-replay. Scriptable from any agent, git hook, or operator console.

Surfaces

The screens it shows up on.

    Public beta macOS 14+

    macOS menu bar app

    The home base. Lives in the menu bar, reads local agent logs, surfaces cost, tokens, quota, sessions, and insights.

    • LSUIElement — no Dock icon, no windows stealing focus
    • Dashboard, providers, models, sessions, projects, streams, search
    • Hermes chat panel sits inside the dashboard
    • Daily digest, smart insights, quota refresh, daemon-backed control plane
    • Optional Firebase sync, optional iCloud session mirror, optional Sentry diagnostics
    Download for macOS
    In App Store review iOS 17+

    iOS & iPadOS companion

    Quota Watch, Pulse, Streams, Hermes, Chart Studio. The Mac runs the data; the phone/tablet renders it natively.

    • Native Swift Charts via Chart Studio — 10 chart kinds plus sandboxed Mermaid
    • Trend Atlas insights rotate across 9 rules
    • Lock-screen Live Activity, Dynamic Island, Siri shortcut
    • Adaptive split-view + sidebar nav on iPad, keyboard shortcuts ⌘1–4, ⌘R, ⌘H
    • Hermes Realtime Relay reaches the Mac's local assistant remotely (paid feature)
    iOS launch status
    Source-only beta Cursor / VS Code 1.95+

    Cursor & VS Code extension

    An activity-bar panel that hooks into the daemon over the local UNIX socket. Build locally and load unpacked — no marketplace listing yet.

    • Burn for the active workspace, scoped to the current Cursor agent run
    • Quota panel pulled from the same daemon the menu bar reads
    • Routed-provider gateway support — Z.ai, MiniMax, Ollama Cloud via Cloudflare tunnel
    • Open VSX / VS Marketplace publication is on the roadmap, not shipped
    Editor setup
    Shipping Embedded in macOS app

    Local daemon

    The control plane. A launchd-managed UNIX socket service every surface talks to.

    • Auth-token-gated JSON-RPC + HTTP gateway
    • Owns provider routing, quota refresh, retrieval, mission control
    • JSONL run journal — every agent invocation, every tool call, replayable
    • Repairs itself when launched from a stale plist or moved app bundle
    Shipping macOS

    Command-line interface

    openburnbar — eight commands for scripting, agents, and operators. Same daemon, no extra account.

    • health · controller · questions · followups · missions
    • mission-approve · simulator-runs · simulator-replay
    • Pipes cleanly into git hooks, CI, and other agent scripts
    Shipping (with iOS app) iOS / iPadOS

    Widgets & Live Activity

    Lock-screen quota, Dynamic Island countdown, home-screen cost sparkline. Siri shortcut: "What's my burn today?"

    • Hero small, cost sparkline medium, dashboard large
    • Live Activity on iOS 16.1+ with top provider + tokens + cost
    • App Intents for Spotlight + Siri
    Shipping (per-device QA matrix) Nest Hub · Pixel Clock · Chromecast

    Smart displays

    One-click "Make display work" — casts a live OpenBurnBar dashboard, with proof of acceptance before marking healthy.

    • Google Nest Hub via Cast V2 + Home Assistant blueprints
    • ULANZI TC001 via AWTRIX HTTP or stock-firmware simulator
    • Per-device QA matrix gates support claims — see docs/SMART_DISPLAY_DEVICE_QA.md
    In development Android 8+

    Android companion

    Read-only Firestore consumer — renders burn data other clients push to Firebase. Source under android/.

    • Material 3 + Jetpack Compose, edge-to-edge
    • Full screen set: burn · streams · pulse · providers · hermes · chart studio · smart display · store · you
    • No Play Store distribution path yet
The honest part

What it doesn't pretend.

A clean console is built on what you choose to leave out as much as what you choose to put in.

  • Honest confidence labels

    Every provider row carries one of three labels — Exact, Estimated, Unavailable. We don't pretend to know what the vendor doesn't tell us.

  • Local-first by design

    Local SQLite + the local daemon are canonical. Firestore is an optional replication plane — never the source of truth. The whole product works offline.

Read it in code, not in marketing.

OpenBurnBar is MIT-licensed. The README, the architecture doc, the threat model, the provider matrix, the changelog — all in the open.