What is DeadBolt?
DeadBolt is a local execution gate for software agents: it checks policy and operator controls before a connected executor runs an action. It is designed for teams building agent-enabled applications or MCP workflows that need to decide which tool calls may proceed. Developers can embed it in Rust, connect through a local sidecar from another language, or place it around a trusted stdio MCP server. It controls connected execution routes, not arbitrary code or the agent provider.
DeadBolt Features:
Execution Admission: An executor can request a fresh admission immediately before dispatch, with a denied action's callback left uncalled.
Policy Checks: Policies can restrict tools and recognized destination fields, while child runs inherit restrictions that cannot be widened.
Operator Controls: Operators can pause runs, set reported-spend caps, use clips, and kill a run to block later admissions.
Run Lifetimes: Runs have idle time-to-live settings and fixed deadlines, with supervisor renewal or explicit activity-based renewal available.
Integration Options: DeadBolt supports embedded Rust, local sidecars for Python and other languages, and a proxy for trusted stdio MCP servers.
Evidence Records: It stores SQLite evidence, can create JSONL mirrors, and supports per-agent incident exports.
DeadBolt Benefits:
Fewer Unwanted Effects: Checking admission before the action body runs helps prevent a denied tool call from performing its connected effect.
Constrained Delegation: Inherited restrictions help teams keep a child run from receiving broader permissions than its parent.
Operator Response: Pausing or killing a run gives operators a way to stop subsequent admissions when a workflow needs intervention.
Reviewable Activity: Stored evidence and incident exports give teams records to consult when investigating agent activity.
Adaptable Adoption: The embedded, sidecar, and MCP options let developers add a gate without using only one application language or executor pattern.
Use Cases:
Python Tool Calls: Wrap a Python function used by an agent so each protected invocation is admitted before the function body runs.
OpenAI Agent Tools: Protect functions in an OpenAI Agents SDK application by placing the provided decorator on each protected function.
Owned MCP Servers: Add admission checks inside the tool bodies of a FastMCP server your team operates.
Trusted MCP Clients: Place the stdio proxy in front of a trusted downstream MCP server to apply policy to its tool calls.
Rust Executors: Embed the store and an admission check in a Rust application at the point where it dispatches an action.

