Dollar budgets that stop runaway agents
Token metering tells you what happened. A hard dollar ceiling is what stops the next one. What Ktesio does when an agent hits its budget mid-task.
An agent that can call a model can call it a thousand times. Retry loops, tool failures, and a task that turns out to be harder than the prompt suggested — each one is a line item you did not approve. Metering tells you what happened afterwards. It does not stop the spend while it is happening.
Ktesio treats that as a supervision problem. An agent does not just get a role and a task; it gets a budget, denominated in dollars, before it starts.
What the budget does
Every model call is metered against the ceiling — real token prices, not estimates. When the ceiling is reached, the supervisor stops the run cleanly and reports what was spent and where.
$ ktesio run review-pr --budget 2.50
▸ agent started · budget $2.50
▸ 14 calls · $2.31 spent
▸ budget reached · run stopped
Three properties matter in that transcript:
- The stop is clean. The run ends with a structured result — what was done, what was attempted, what it cost — not with a half-finished diff.
- The number is real. No estimate of remaining cost is offered; the number is the number. An agent that guesses at its own spend will guess in its own favour.
- The budget is not the agent's. A run cannot raise its own ceiling. It can finish under it, or it can stop.
What it does not do
It does not predict. A budget is a boundary, not a forecast — Ktesio does not claim to know whether your task costs $0.40 or $4.00 before running it. It does not negotiate. And it does not replace the cheap fixes — a smaller model for the easy steps still spends less than a budget on the expensive one.
The point is narrower and more useful: whatever goes wrong, the blast radius is a number you chose in advance.
Metering tells you what happened. A ceiling is what stops the next one.