Kill switch
also called big red button · emergency stop · agent kill switch
Position is the whole design. The switch must be the first check in the decision point, ahead of lifecycle status, permissions, budgets and every policy, because each check placed before it is another opportunity for the switch never to be reached. A kill switch evaluated after the policy engine is a kill switch that stops working precisely when the policy engine is the thing going wrong. The same reasoning applies to its dependencies: a switch that a licence check, a quota or a failed sign-in can disable is not a kill switch, because a licence problem that blocks an operator from signing in is a licence problem that disables the button they signed in to press.
Three scopes are usually enough: one agent, one team, everything. Team matching should be case-insensitive, on the plain grounds that a team name is being typed by a human under incident pressure and a capital letter should not be the difference between a fleet stopping and not. A team-scoped switch also catches an agent registered into that team afterwards, without anyone remembering to add it — which is the behaviour you want at 2 a.m. and the reason scope is expressed as an identity predicate rather than as a list of ids captured at engagement time. Release should be a field on the record rather than a deletion, so that a released switch reaches nobody while the incident stays readable afterwards.
Attribution is not paperwork. Engaging is an administrative action that requires a stated reason and cannot be anonymous, because the audit entry is the only account anyone will ever have of why an entire fleet stopped; the refusal returned to callers should carry the scope, the person and the reason, so the first engineer to see a 403 does not open an availability incident. Both engagement and release belong in a tamper-evident record, because the second question any review asks is when it was released and by whom.
Two failure modes turn a kill switch into decoration, and both have been found in real systems. The first is a duplicated predicate: if the logic deciding whether a switch reaches a given subject is written once in the gateway and again in whatever compiles rules for an offline or on-device enforcer, then a copy stricter by one character omits an engaged switch from that artefact, and the button is pressed in the console and reaches nothing on the laptop. Write it once, export it, and let every consumer use that one function. The second is exempted paths. Endpoints that execute nothing — token counting, model catalogue listings — get excused from the request-opening path for good reasons, and quietly take the status and kill-switch checks out with them, so a stopped agent can still price prompts and enumerate models. Anything an agent can call has to pass the switch, including the endpoints that look harmless.
Finally, be exact about what it stops. A kill switch is an admission control: it refuses new work. It does not recall a request already dispatched to a provider, it does not cancel a tool call already executing, and it does not undo an effect already committed in a downstream system — anything in flight completes and is billed. Where decisions are compiled into a snapshot for offline enforcement, a switch engaged after that snapshot was issued does not reach the device until the next refresh, so the snapshot’s freshness bound is the entire bound on the exposure, and past that bound the local enforcer should deny rather than decide on stale evidence. Those are the sentences to put next to the button, because an operator who believes the switch reverses actions will press it and then stop looking.
A team-scoped stop, and what it does not undo
At 02:14 an agent in the payments team enters a retry loop against a tool that keeps timing out. The on-call engineer engages a team-scoped switch naming the team and the reason. From that moment, every request from every agent in that team — including one registered twenty minutes earlier — is refused with a typed 403 quoting the scope, the engineer and the reason. The three requests already dispatched upstream complete normally and appear on the invoice; two tool calls already in flight finish and their effects stand. At 09:30 the switch is released by a named person, and both the engagement and the release sit in the audit record, which is what the incident review reads first.
What kill switch is routinely confused with
- Circuit breaker
- A breaker engages itself from observed failures, releases itself after a cooldown, and is scoped to a dependency. A kill switch is engaged and released by a named person, is scoped to an identity, and is indifferent to whether anything is failing — it is for the case where the system is working perfectly and doing the wrong thing.
- Agent suspension
- Suspending an agent is a durable edit to its own record and is the right tool for this agent should not run again until somebody reviews it. A kill switch is the immediate one: it is checked before lifecycle status, it reaches many subjects at once without editing any of their records, and it is expected to be released within the hour.
- A rate limit of zero
- It would also refuse traffic, but it is a per-subject configuration change rather than one action, it carries no incident reason, and it is evaluated after permissions and lifecycle rather than before them — so it inherits every failure mode of the checks above it.
Related terms
Circuit breaker
A circuit breaker is a state machine in front of a remote dependency that stops sending it traffic once a threshold of consecutive failures is reached, waits a fixed cooldown, then allows one probe request to decide whether to resume. Its purpose is to fail immediately against a dependency already known to be down, instead of paying a full timeout on every request until it recovers.
Inline enforcement
Inline enforcement means the decision to allow, refuse, alter or hold an action is taken in the path the action must travel, before it takes effect, by a component the acting system cannot bypass or overrule. The alternatives — a rule the agent is asked to follow, a check inside the agent’s own framework, an alert raised afterwards — are advisory rather than enforcing, because in each case the party being governed is also the party enforcing.
Agent registry
An agent registry is the system of record for the AI agents an organisation runs: one record per agent carrying its identity, a named human owner, a declared purpose, its permissions, its lifecycle status and its operating limits. It becomes a control rather than a document only when it is the same record the enforcement point resolves on every call, because an inventory maintained alongside the runtime is updated by whoever remembers while the runtime is updated by whoever ships.
Where Token Observe does this
The definition above is the field's, not the product's. This is the part of the product that implements it, for a reader who wants to see one.
Spend controls
Hard USD ceilings, per-minute rate limits and a kill switch, all decided before the request leaves your network.
One billable egress: no retry, no failover
Endpoint seats
Policy enforced inside each vendor’s own administrator hook, decided offline against a signed bundle, because a hook that phones home fails open.
Preview. Not an inline gateway on an unmanaged device.
The terms next to this one
Where the money goes, why providers disagree about how to count it, and what a spend control has to do to be a control rather than an alert.
Definitions are the easy part.
The glossary is written to be useful whether or not you ever buy anything. If you have got to the point of deciding how to implement one of these in your own estate, say what your agents do and you will get a straight answer about what it would actually take.
no form · no qualification step · no sales desk · the other three ways in