Adrian
python-sdk-v1.2.0 open-sourceOpen-source runtime AI agent security tool - monitors and controls AI agents, catching malicious tool use, prompt injection, and policy drift in real time, before the agent acts.
Summary
Adrian is an open-source runtime security layer for AI agents, free to use under an Apache-2.0 licence, that watches an agent's actions and reasoning as it runs and can alert, block, or route decisions to a human reviewer before they execute. It ships as an SDK you wrap around existing code (a few lines around a LangChain or Anthropic-based agent, or a Claude Code plugin via hooks) with events streamed to a hosted or self-hosted dashboard, making it a fit for teams building or securing agentic AI systems rather than traditional application security teams. The README frames it as a runtime counterpart to static analysis and network monitoring, catching prompt-injection and out-of-remit behaviour those miss, and includes PII redaction for agent transcripts. Development is active, with recent releases adding reasoning capture across SDKs and deeper Claude Code integration.
Open-source runtime AI agent security tool - monitors and controls AI agents, catching malicious tool use, prompt injection, and policy drift in real time, before the agent acts.
What Adrian answers
Which agent frameworks does it actually work with today?
LangChain and LangGraph agents, Anthropic SDK agents, and Claude Code via a hooks-based plugin, with reasoning capture across both the Python and TypeScript SDKs
Does blocking an action mean waiting on a person?
not necessarily - an agent profile is set to alert without stopping anything, block automatically against policy, or hold for a human to approve on the dashboard, and this can be chosen per agent
What happens to sensitive data that passes through an agent's conversation?
transcripts can be filtered for categories like email, phone, SSN, credit card, and passport numbers before they're stored, redacting them rather than logging them raw
Do I need to run my own infrastructure to use it?
no - events stream to a hosted dashboard by default, though the same SDK can point at a self-hosted backend instead
Will this slow down or change how my agent runs?
it wraps existing code with a couple of lines and captures calls as they happen, but the streaming transport requires the agent to run on an async event loop rather than making calls synchronously
What do I see for an action that gets flagged?
the event feed shows the classification verdict and a severity code, alongside the agent's reasoning trace where the model exposes one, not just the action it took
Examples
Command line
No option matches that search.
| option | found in | since | description |
|---|
No option matches that search.
Values are placeholders taken from each option’s declared default. Nothing is executed here — the output shown is a recording of a run that already happened.
Release history
- python-sdk-v1.2.0
Adrian Python SDK v1.2.0 adds reasoning capture for LangChain and OpenAI-compatible models, including a new
reasoningfield in LLM events.└──▷ GET THIS VERSION$ git clone --branch python-sdk-v1.2.0 https://github.com/secureagentics/Adrian.git # already have the repo? check out this version: $ git checkout python-sdk-v1.2.0
- ›Adds a
reasoningfield to LLM end events in the Python SDK, populated via _extract_reasoning() from LangChainChatGenerationmessages, capturing chain-of-thought output from reasoning models. - ›Extends reasoning capture to support three provider layouts: a
summarylist of{type: 'summary_text', text: ...}entries (OpenAI Responses / LangChain default), a barereasoningstring (LangChainoutput_version='v1'), and Anthropic'sthinkingstring. - ›Adds reasoning capture to the TypeScript OpenAI SDK integration, reading
delta.reasoning_contentfrom streamed chat completion chunks for OpenAI-compatible servers that surface chain-of-thought in that field.
- ›Adds a
- python-sdk-v1.1.0
Adrian Python SDK v1.1.0 adds a Claude Code plugin with HITL verdicts, PII filtering, and Anthropic SDK integration.
└──▷ GET THIS VERSION$ git clone --branch python-sdk-v1.1.0 https://github.com/secureagentics/Adrian.git # already have the repo? check out this version: $ git checkout python-sdk-v1.1.0

- ›New Claude Code plugin (
integrations/claude-code/adrian_cc/agent.py) connects Claude Code hooks to the Adrian backend via WebSocket, supporting three server-driven execution modes:MODE_ALERT(fire-and-forget),MODE_BLOCK(wait for verdict, block on policy), andMODE_HITL(wait for human approval on the dashboard). - ›Adds PII filtering to the Claude Code plugin (
integrations/claude-code/adrian_cc/pii/_patterns.py), detecting 12 PII categories —EMAIL,PHONE,SSN,CREDIT_CARD,IP_ADDRESS,DATE_OF_BIRTH,IBAN,PASSPORT,STREET_ADDRESS,POSTAL_CODE,DRIVER_LICENSE, andAWS_KEY— in agent conversations before they are forwarded. - ›HITL verdicts are now forwarded to Claude Code for native inline approval, enabling human-in-the-loop decisions to flow directly back to a running Claude Code session.
- ›Adds Anthropic SDK integration, allowing Adrian to instrument Anthropic API calls alongside the existing LangChain/LangGraph support.
- ›LangChain/LangGraph instrumentation is extracted into
langchain_handler.py, isolating the handler for cleaner integration management.
+1 moreshow less
- ›Severity badges now appear in the Events table and mobile cards, based on MAD codes, and the event list API response adds latest verdict metadata while omitting full payload and token fields from list rows.
- ›New Claude Code plugin (