Valta Docs
Kill Switch
The kill switch instantly stops all financial activity for an agent. It is not queued — the freeze takes effect immediately. No transactions can execute while an agent is frozen.
Freeze an agent
ts
const result = await valta.agents.freeze(agentId)
// result.status === 'frozen'
// All subsequent run attempts return AGENT_FROZEN error
Unfreeze an agent
ts
const result = await valta.agents.unfreeze(agentId)
// result.status === 'active'
What happens when an agent is frozen
- Run attempts return an
AGENT_FROZENerror immediately - No transactions can be initiated or completed
- The audit trail remains fully readable
- The spending policy remains intact and accessible
- The wallet balance is preserved — funds are not moved or locked
CLI
bash
valta agents freeze <agent-id>
valta agents unfreeze <agent-id>
Bulk freeze all active agents
Use this in an incident response scenario where you need to stop all agent activity immediately.
ts
const { data: agents } = await valta.agents.list({ status: 'active' })
await Promise.all(agents.map(a => valta.agents.freeze(a.id)))
console.log(`Froze ${agents.length} agents`)
Note: Freezing does not delete anything. The audit trail, policy, and wallet balance are all preserved. You can unfreeze and resume at any time.
When to use the kill switch
- Suspected compromise — unusual spending patterns or unexpected transactions
- Prompt injection detected — audit trail shows
injection_attempt_blockedentries - Maintenance window — pause agents while updating integration code
- End of project — freeze before decommissioning to preserve the audit trail