> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Emergency Stop Config • AI Agent SDK

> EmergencyStopConfig: Configuration for the global operator emergency-stop brake (Issue #4220).

# EmergencyStopConfig

> Defined in the [**config**](../modules/config) module.

<Badge color="blue">AI Agent</Badge>

Configuration for the global operator emergency-stop brake (Issue #4220).

Selects the backend for the durable, fail-safe operator brake consulted at
every new-work admission seam (WebSocket inbound, HTTP/MCP inbound, kanban
dispatch, scheduler due-loop). The default `"off"` backend engages a
no-op brake so `is_engaged()` is always `False` — behaviour is
byte-for-byte today's, no new dependency, no hot-path change. Selecting
`"file"` persists the engaged state to a sentinel at `path` so it
survives a crash/restart and is shared across lanes; an unreadable/corrupt
sentinel counts as *engaged* (fail-safe).

This maps onto the pure core
:class:`~praisonaiagents.gateway.protocols.EmergencyStopProtocol`;
:meth:`to_estop` builds the concrete brake.

Attributes:
backend: `"off"` (default, no-op) or `"file"` (durable sentinel).
path: Sentinel location for the `"file"` backend (required for it).

## Properties

<ResponseField name="backend" type="str">
  No description available.
</ResponseField>

<ResponseField name="path" type="Optional[str]">
  No description available.
</ResponseField>

## Methods

<CardGroup cols={2}>
  <Card title="enabled()" icon="function" href="../functions/EmergencyStopConfig-enabled">
    Whether a real (non-`off`) brake backend is selected.
  </Card>

  <Card title="to_estop()" icon="function" href="../functions/EmergencyStopConfig-to_estop">
    Build the pure core emergency-stop brake this config describes.
  </Card>
</CardGroup>

<Accordion title="Internal & Generic Methods">
  * **from\_dict**: Create from a parsed `gateway.control` mapping (tolerant of None).
  * **to\_dict**: Convert to dictionary.
</Accordion>

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/gateway/config.py#L710">
  `praisonaiagents/gateway/config.py` at line 710
</Card>

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Configuration Overview" icon="gear" href="/docs/docs/configuration/index" />

  <Card title="Agent Config" icon="robot" href="/docs/docs/configuration/agent-config" />
</CardGroup>
