Skip to content
budi / getbudi.dev
Free · self-hosted · no signup · open source (MIT)

Local-first cost tracker for AI coding agents.

Tracks CursorClaude CodeCodexCopilot Chat

After brew install, three things run on your machine: a small daemon that tails the transcripts your agents already write to disk, a status bar in your editor, and a CLI for repo / branch / ticket attribution. Nothing in your network path.

brew install siropkin/budi/budi && budi init
Installs latest. One command. macOS / Linux / Windows. No account needed. Full setup guide →
~ budi stats project
Today                          7d        30d
──────────────────────────────────────────────────
$ 4.92 session  🟢 healthy  $ 38.10  $ 162.44

Top repos (last 7d)            cost      msgs
──────────────────────────────────────────────────
siropkin/budi               $ 18.40    21,402
acme/web                    $ 11.05     9,118
acme/infra                  $  6.32     2,845
personal/notes              $  2.33       661

Top models (last 7d)           cost     share
──────────────────────────────────────────────────
claude-opus-4-7             $ 22.18    58.2 %
claude-sonnet-4-6           $  9.41    24.7 %
claude-haiku-4-5            $  4.02    10.6 %
gpt-5-codex                 $  2.49     6.5 %

Branch hot list                cost    ticket
──────────────────────────────────────────────────
budi/feat/cloud-ingest      $  6.91   BUD-214
acme/web/fix/checkout-retry $  4.38   WEB-1180
acme/web/feat/analytics-v3  $  3.12   WEB-1199

What it does

Multi-agent. Real attribution. Zero interception.

Claude Code, Codex CLI, Copilot CLI, and Cursor — tracked by tailing the transcripts each agent already writes to disk. No proxy, no gateway, nothing in your network path.

Multi-agent, no interception

Claude Code, Codex CLI, Copilot CLI, and Cursor — all attributed by the same daemon. Reads the transcript files those tools already write to disk. Nothing in your network path.

Reads transcripts from disk — no proxy

Per repo, branch, and ticket

Cost attributed to the repo and branch you were on, with ticket IDs lifted from branch names. Filter by ticket, activity, file, model, or custom tag.

budi stats branch · ticket · file

Live status line

Rolling 1d / 7d / 30d cost in Claude Code, Cursor, VS Code, and JetBrains IDEs — scoped per host. The Cursor line shows Cursor spend only; the VS Code and JetBrains lines show their own Copilot Chat spend only.

_projects/budi · main · budi · $3.47 session · $0.06 message

Session health on demand

budi sessions <id> shows context growth, cache reuse, cost acceleration, and retry loops in plain English. Not a wall of emoji by default — quiet unless you ask.

budi sessions <id>
Cursor — payments.ts

// src/lib/payments.ts

export async function refundCharge ( id : string ) {

return stripe.refunds. create({ charge: id });

}

main
budi · $0.42 1d · $3.18 7d · $14.92 30d
Cursor — status bar scoped to cursor. Each editor shows only its own host's spend.
Tracks Cursor Claude Code Codex CLI Copilot CLI Copilot Chat Continue, Cline, Roo Code, Aider, Gemini CLI (coming soon) All providers →

Why not just use X?

The realistic alternatives, named honestly.

If one of these already fits your workflow, use it. Budi exists for the case where you run more than one agent, care about per-repo attribution, and are not willing to upload prompts.
Capability Provider dashboards ccusage / claude-usage SaaS cost trackers Budi
Multi-agent
Repo / branch / ticket attribution Partial
Local-only by default
No prompts uploaded
Live statusline
Team aggregates
Cross-agent rollups

Provider dashboards

Anthropic Console · OpenAI usage · Cursor usage

Good at
Official, authoritative totals. Free.
Stops at
Single-provider. No repo, branch, or ticket attribution. Nothing cross-agent.

Open-source CLI usage tools

ccusage · codeburn · claude-usage

Good at
Local, lightweight, correct for the one agent they target.
Stops at
Single-agent. No cross-agent rollups, no branch/ticket attribution, no team view.

SaaS cost trackers that upload prompts

Generic observability vendors that ingest LLM payloads

Good at
Central dashboard with deep analytics.
Stops at
Your prompts, code, and responses leave your machine — a hard no for most source code.

Budi

Local daemon · transcript tailing · multi-agent · opt-in dashboard

Good at
Multi-agent via local transcript tailing — nothing in your network path. Repo/branch/ticket attribution. Live session health vitals. Optional team dashboard with aggregates only.
Caveats
You run a small daemon. Live rows lag by seconds; Cursor cost can additionally lag ~10 min via the Cursor Usage API. Not every agent supported yet (Gemini deferred).

Privacy contract

Local-first, by design.

A small Rust daemon on your machine watches the transcript files your agents already write to disk. Nothing sits in your network path. Three things in plain English:

Never leaves

Prompts, code, AI responses, file paths, email addresses, raw payloads, and tag values. There is no "full upload" mode in the code.

Can optionally leave

Pre-aggregated daily numbers — tokens, cost, model name, hashed repo ID, branch name, ticket ID. Push-only, HTTPS-only. Off by default.

How to turn it on

Free and open source — sign up at app.getbudi.dev, then run budi cloud init --api-key <key> --force --yes. One command, no editor required.

Read the full data contract →

Online dashboard

Your local stats, visible from anywhere.

The daemon pushes pre-aggregated daily numbers — tokens, cost, model, repo, branch, ticket — to app.getbudi.dev. Never prompts, code, or file paths. Free and open source for any use.

app.getbudi.dev — Overview

Today

$4.92

healthy

7 days

$38.10

+12%

30 days

$162.44

3 agents

Messages

21,402

7d total

Cost by repo (7d)

siropkin/budi $18.40
acme/web $11.05
acme/infra $6.32
personal/notes $2.33

Cost by model (7d)

claude-opus-4-7 $22.18
claude-sonnet-4-6 $9.41
claude-haiku-4-5 $4.02
gpt-5-codex $2.49
Dashboard overview — same numbers as budi stats project, visible from any browser. Aggregates only, never prompts or code.

Community

Open source, growing fast.

Budi is MIT-licensed and built in the open. Star the repo, sponsor the work, or just say hi in an issue.

FAQ

The questions we keep getting asked.

Editor coverage, Copilot, JetBrains, and why budi reads local logs instead of going through a proxy. If yours isn't here, open an issue.

What leaves my machine?

By default, nothing. Optionally, only pre-aggregated daily numbers (tokens, cost, model, hashed repo ID, branch, ticket ID). Never prompts, code, responses, file paths, or emails.

Is it free?

Yes — fully free and open source (MIT) for any use, including teams and commercial projects. The daemon, CLI, and extensions are free forever. The optional online dashboard at app.getbudi.dev is also free.

Which editors does budi support?

VS Code, Cursor, and JetBrains IDEs. One extension covers VS Code and Cursor; a sibling plugin covers JetBrains via the JetBrains Marketplace.

Which AI providers does budi track?

Claude Code, Codex CLI, Copilot CLI, Copilot Chat, and Cursor. The daemon reads the transcript and log files these tools already write to disk — no proxy, no interception.

How quickly does budi see a new session?

Most providers surface within seconds. Some providers involve a short delay when cost data comes from an external API. See the provider table above for details.

Prior art. Budi's local-first approach is inspired by ccusage, claude-usage, and codeburn. If you only need one agent, those tools are excellent.