agent, run, or mission causes the SDK’s pre-execution check to refuse all further @guarded_action calls for that target until it is revived.
| Field | Description |
|---|---|
target_type | agent, run, or mission |
target_id | The ID of the target (agent_id, run_id, etc.) |
reason | Optional, ≤2000 chars; surfaced in interventions and the console |
is_active | True until the target is revived |
killed_by / killed_at | User who killed the target and when |
revived_by / revived_at | Set when the target is revived |
organization_id | Kill switches are scoped per organization |
Endpoints
All endpoints live under/api/v1/kill-switch and require either a session cookie (Clerk) or an API key (Authorization: Bearer ...).
Kill a target
KillSwitchPublic record. Returns 409 Conflict if the target is already killed.
Revive a target
404 Not Found if there is no active kill switch for the target.
Check kill status (SDK)
List active kill switches
killed_at descending.
SDK behaviour
When the SDK’s pre-action check returnsis_killed: true, the next @guarded_action raises PolicyViolationError with a kill-switch reason — the action body never runs. All blocked attempts are recorded as HARD_BLOCK interventions referencing the killing user.
Console
The console exposes/kill-switch as a top-level route — see Console → Kill Switch.
See also
- Console → Kill Switch — UI for killing and reviving targets
- Platform → Interventions — kill-switch blocks appear here
