Skip to main content
Protect your AI agent in 4 simple steps.

Prerequisites

  • Python 3.12+
  • Docker
Quick setup (no repo cloning required) - Copy this into your terminal or directly paste into your coding agent to start the Agent Control server, UI:
Then, install sdk in your virtual env:
What this does:
  • ✅ Starts Agent Control server at http://localhost:8000
  • ✅ Starts UI dashboard at http://localhost:8000
  • ✅ Installs Python SDK (agent-control-sdk)
Next: Jump to Step 3: Register your agent
Alternatively, for local development with the Agent Control repository, clone the repo and follow all steps below.

Step 1: Start the Agent Control Server

Startup AgentControl server manually for local development.

Local development (cloning the repo)

Prerequisites:
  • uv — Fast Python package manager (curl -LsSf https://astral.sh/uv/install.sh | sh)
  • Node.js 18+ — For the web dashboard (optional)
  • Server runs at http://localhost:8000
  • UI runs at http://localhost:4000
💡 Verify the server: Open http://localhost:8000/health — you should see {"status": "healthy", "version": "..."}.

Step 2: Install the SDK

In your agent application project:

Step 3: Register Your Agent

Agent must be registered with the server. You should also add @control decorator around tools and LLM call functions. Here is a contrived example. Reference our Examples for real world examples for specific frameworks.

Step 4: Add Controls

The easiest way to add controls is through the UI — see the UI Quickstart for a step-by-step guide. Alternatively, use the SDK as shown below or call the API directly. Run following setup script to create controls to protect your agent.
Controls store leaf selector and evaluator definitions under condition, which also enables composite and, or, and not trees. Now, run your agent code. 🎉 Done! Your agent now blocks SSN patterns automatically.
Authentication is disabled by default for local development. When you’re ready to deploy, see the Enable Authentication guide.

What Is Happening Under the Hood

Agent Control Architecture
  1. Your app calls chat("test")
  2. Function executes and returns "Your SSN is 123-45-6789"
  3. @control() decorator sends output to Agent Control server
  4. Server checks the output against all controls
  5. block-ssn control finds SSN pattern → matches
  6. Server returns is_safe=False with the matched control
  7. SDK raises ControlViolationError and blocks the response
Key Benefits:
  • ✅ Controls are managed separately from your code
  • ✅ Update controls without redeploying your agent
  • ✅ Same controls can protect multiple agents
  • ✅ View analytics and control execution in the dashboard

What’s Next

UI Quickstart

Manage agents and controls visually through the dashboard.

Concepts

Learn about controls, selectors, evaluators, and actions.

Examples

See working integration examples with LangChain, CrewAI, and more.

Performance

See benchmark results showing Agent Control adds negligible latency.