Policy on every action
Default-deny YAML rules: allow, block, require human approval, thresholds, rate limits — checked before the tool runs.
Tamper-evident audit
Every action in a SHA-256 hash chain. Any edit, reorder, or deletion is detectable with one command.
Instant kill switch
Pull the cord and the agent stops on its next call — even across processes. Plus human-in-the-loop approvals.
Catch the bad stuff
Prompt-injection, PII in arguments, and the lethal trifecta (secret → untrusted input → egress) get flagged.
How it works
Two lines to protect any agent
from sentinel import Sentinel
sentinel = Sentinel.from_files(policy="policies/starter.yaml", db="data/sentinel.db")
@sentinel.guard # every call is checked, logged, killable
def send_email(to, subject, body): ...
# …or guard a whole toolset at once:
tools = sentinel.wrap_all({"send_email": send_email, "search_web": search_web})
Works with plain Python, LangChain, OpenAI Agents, CrewAI, and MCP (proxy + server).
Compliance-aware
Export audit reports mapped to EU AI Act Art. 12, GDPR, NIST AI RMF, ISO/IEC 42001, the Colorado AI Act, and SEC/FINRA recordkeeping.
⚠️ Alpha software. The injection detector is heuristic v1 (not a silver bullet), and compliance mappings are indicative engineering aids — not legal advice or certification.