purser

the purser for your coding agents

Every agent run, metered and recorded.

One local console for the coding agents you already pay for. Every run metered, every change recorded, every audit provable.

coming with v0.1.0
curl -fsSL purser.sh/install | sh

Not live yet. What happens when you run it

  • runs on your machine
  • loopback only
  • not an editor

01the demo

Someone edited a line out of the audit log. This is the CLI catching it, naming the entry and showing the hash that no longer matches.

purser audit
$ purser audit verify
reading ~/.purser/audit.jsonl
entries 2,418 · 2026-08-01 to 2026-08-24
chain sha256, genesis 0000…
✗ chain broken at audit.jsonl:1104
expected sha256:9b1c4f…
found sha256:2ea770…
run #4471 · claude_code
written 2026-08-24T09:41:22Z
✗ 2,417 of 2,418 entries verified
exit 1
purser audit verifychain broken

02the problem

Nobody can see what their coding agents actually cost. And the published numbers on what that code does once it ships are not flattering either.

the agent loop

The prompt is a rounding error. Spend happens in the loop: file reads, tool results, context resent every turn, retries.

billed on every turn
  • your promptonce
  • file readsevery turn
  • tool resultsevery turn
  • context resentevery turn
  • retriesbilled again

No vendor shows you the total across the agents you actually use.

~5,000

apps found leaking corporate or personal data

share of scanned apps leaking
scanned
~380,000
leaking
~5,000

source

RedAccess scan of ~380,000 apps, May 2026

21% to 3.8%

collapse in refactored code as AI authorship rose, while duplication climbed 81%

refactored share of changed code
2023
21%
2026
3.8%

source

GitClear, 623M code changes, 2023 to 2026

03what it does

  1. 01

    run

    your agent, your login

  2. 02

    meter

    real per-model tokenizer

  3. 03

    ledger

    append-only write

  4. 04

    governor

    warn, ask or stop

  5. 05

    audit

    hash-chained entry

01

Ledger

Append-only, enforced by a database trigger, not convention.

Real tokenizers per model family. Costs only where they are real: metered API providers show dollars; subscription agents show tokens, because we cannot know your plan. Unpriced models say so instead of showing $0.00.

02

Governor

Budgets per run, per day, per month.

Scoped to a session, a workspace, or everything. Warn, ask, or hard stop.

03

Audit

Hash-chained log, verifiable from the CLI.

Written to ~/.purser/audit.jsonl. Tampering and truncation are detectable. purser audit verify names the first broken line.

The Purser console: spend meter, decision card and diff review, all local.
No model vendor will ever show you Claude spend next to Codex spend next to Cursor spend in one ledger. That comparison is against their interest.
A team running three agents cannot get one view from any vendor. Purser is that view, and it runs on your machine, not theirs.
one ledgerlocal
  • Claude Code
  • Codex
  • Cursor CLI
  • Gemini CLI

purser ledger

append-only, hash-chained

04agents

Works with the agents you already have logins for. Purser meters them; it does not resell them.

  • Claude Code

    kind
    SDK / CLI
    auth
    your login
    meter
    tokens
  • Codex

    kind
    CLI
    auth
    your login
    meter
    tokens
  • Cursor CLI

    kind
    CLI
    auth
    your login
    meter
    tokens
  • Gemini CLI

    kind
    CLI
    auth
    your login
    meter
    tokens
  • Grok, Perplexity, OpenAI-compatible

    kind
    HTTP
    auth
    your API key
    meter
    metered, real cost
  • Ollama

    kind
    HTTP, local
    auth
    none
    meter
    free
  • Echo

    kind
    fake, for testing
    auth
    none
    meter
    not metered

Subscription agents report tokens, not dollars. Your plan price is not knowable from the outside.

05status

Only what has shipped is listed as shipped. In a market full of demos that die on the second prompt, this section is the point.

tracked

11 shipped·5 in build·16 total

69% shipped
shippedin build

shipped

11
  • Local runner: workspaces, sessions, runs, streaming events01
  • Diffs with approve / reject; permission modes ask / auto-edit / bypass with TTL02
  • Nine agent adapters behind one registry03
  • Git worktree per session04
  • Append-only token ledger with real per-model tokenizers05
  • Budget governor: token and USD caps, warn / ask / hard stop06
  • Hash-chained audit log with purser audit verify07
  • Voice: push-to-talk with local approve / reject / stop commands08
  • Phone pairing through a relay that stores nothing09
  • Drop-folder sync into the workspace inbox10
  • GitHub and GitLab as equal remotes11

in build

5
  • Commit provenance trailers: model, prompt hash, cost and reviewer on every AI-authored commit01
  • Security decision cards for policy rules02
  • Signed binaries and a public release03
  • Governed database and web-ingest adapters04
  • Hosted team cells05