Spend, live

Every turn's usage and every box's cost, per workspace, member, and organization. One cap that pauses the fleet. Connect Stripe and PostHog and revenue sits on the same timeline.

View as Markdown

Running a fleet costs money in two places: what the agents burn, and what the machines cost. Cohalen shows both live, prices the work that never shipped, and puts your revenue on the same screen so you can see the two move together.

The cap

The spend cap is the per-workspace budget meter. When a turn's spend crosses the cap, Cohalen stops that turn the same way a manual cancel stops it. The fleet pauses at the cap and waits for you.

It's on by default and never turns itself off quietly. Set it per workspace or as a default. It's required for a workspace in a box, because nobody is watching the meter on a machine you can't see.

The meter reads each agent's own reported usage, so it covers every agent that reports it. An agent that reports nothing shows as unmetered, counted and visible, never silently guessed.

The ledger

Every turn writes a row: tokens in full breakdown, the agent's own reported cost, model, agent, workspace, repository, and time. Every box writes a row too: the vendor, the machine time, and who was billed. Rows only ever append, so the record can't quietly rewrite itself.

You read it on three axes: per workspace, per member, per organization.

Agent cost is reported and machine cost is read from your vendor's usage API; until the vendor answers, the surface holds the slot with an elapsed-time estimate and says so. The two meters are never summed into one figure. Different units, different payees, and a number that's part fact and part estimate is neither.

What the spending bought

Every spend row lands in one of three buckets, derived from where the work stands right now:

  • Shipped: the workspace merged.
  • Open: the workspace is still in flight.
  • Wasted: the workspace was archived or deleted without merging.

The split answers the question a bill can't: not what did the fleet cost, but what did the work that never landed cost. It's computed from the current state every time you look, so a restored workspace that later merges moves its spend into Shipped on its own.

Revenue on the same screen

Connect Stripe, and your revenue draws on the spend surface's timeline. Connect PostHog, and your product events join it. Both are read-only keys in your OS keychain; the desktop polls the vendors directly, and no Cohalen server touches the data. On a team, the connection lives at the organization level.

Every merge the fleet lands is marked on that timeline: a dated fact on the axis, the way release annotations work in product analytics. Ship, then watch the line.

Cohalen never attributes revenue to a workspace. A payment doesn't pass through a pull request, so a per-workspace dollar figure would be invented, and you'd be right not to trust it. The chart shows facts side by side; the inference is yours.

On a team

A solo organization's figures stay on your machine and sync nowhere. On a shared organization, the paid tier adds Org budget: the organization's spend on the same three axes, whoever's account was billed, with box costs included because Cohalen created and destroyed the boxes and read the vendors' own numbers.

The invoice itself stays between each account holder and their vendor.