Hard dollar and token caps per agent, checked before every call. Agent sessions burn 10 to 50x the tokens of a normal chat. Uber torched its entire 2026 AI coding budget in 4 months.
Killswitch sits between your agent and the LLM API. Every call is attributed to an agent, priced from a model table, and checked against the cap in under 5ms. Cross the line and the next call is rejected, logged, and replayed.
call 0344 would have pushed spend to $50.61, past the $50.00 cap. Rejected before it reached the provider. $0.00 charged.
Every feature is enforcement or the observability around it. Built for the team that got the surprise bill, not the one reading a dashboard after the fact.
Killswitch is pre-launch, so there is nothing fake here. These are 6 real sources on the exact problem: 4 Hacker News threads, a GitHub repo, and a benchmark report. Every number below is theirs.
No. You point OPENAI_BASE_URL at the proxy and swap your key for a proxy key scoped to an agent. The agent code stays exactly the same.
Yes. OpenAI, Claude, and Gemini through the OpenAI-compatible request shape, plus a passthrough mode for others. Streaming is proxied byte for byte after the budget check.
It stops the call. The proxy rejects the request before it reaches the provider, so the kill happens before you are charged, not after. Soft SDK limits only advise; a stuck agent can walk past them.
The engine uses a conservative upfront estimate to run the budget check, then reconciles the real cost on the stream-close event and writes it to the ledger.
The running spend for each agent is kept hot, so the budget check reads current spend in under 5ms before forwarding.
AgentGuard proved the demand with 168 stars, but it is a single-maintainer OSS library: the kill only, no dashboard, no org and project budgets, no pre-kill alerts, no MCP. Killswitch adds the enforcement layer plus the team governance and observability around it.
Point your base URL at Killswitch, set a dollar and token cap per agent, and let the proxy pull the plug at 100%. Alerts at 75% and 90% give you the warning first.
Put a cap on it →