Budgets & controls

A budget that alerts is a budget that was already spent.

TokenLock enforces at the request, not in a report a week later. When someone reaches a limit the request is refused or served by a cheaper model, and the person is told which.

Period

hourly
daily
weekly
monthly

Scope

per person
shared pool
per application key
per end user

Action

block
fall back to a cheaper model

The person learns

A notice you wrote, appended to the reply in their own client.

The notice nobody expects

Most governance tools stop a request and leave the person staring at a 429. TokenLock appends an explanation you wrote, in the client they are already looking at.

It is added after the model answers and stripped before anything goes back in, so the model never sees it and the conversation is not polluted.

Write it once per policy. Most teams put a channel name in it.

~/payments-api · claude code

Done. The migration script now retries on
throttling and logs the profile that served
each call.

[TokenLock] You have reached your monthly
budget of $120.00. Requests will be served
by claude-haiku-4-5 until 1 September.
Ask #platform-help if this needs raising.

Seeded demo tenant. The wording is yours.

Four policies, one estate

A shared pool for a team that spikes, a hard cap for contractors, a per-end-user budget behind one application key.

PolicyScopeOn limitQuotaUsed
Engineering defaultper person · monthlyfall back$120.00$61.40
Platform poolshared · monthlyfall back$8,000.00$6,140.28
Contractorsper person · weeklyblock$40.00$39.10
support-assistantper end user · dailyblock$2.50$0.84

One key, a budget per end user

An internal application holds a single key. A header declares which end user the request is for, and TokenLock enforces that person's budget behind it.

Support assistants, review bots and internal chat surfaces stop being one anonymous line on the bill.

Request
POST /v1/messages
Authorization: Bearer tl_sk_live_...
X-TokenLock-End-User: a.rahman@acme.com
X-TokenLock-Project: support-triage

Set one budget and watch it hold.