Catalog PyPI
Back to packageRELEASE DETAILS

1.2.0

PyPI

agentsentinel-core

Safety controls for AI agents — budgets, approvals, rate limits, and audit logs

agentsaianthropicapprovalauditautogenbudgetcrewaidlpguardrailslangchainllamaindexllmopenaipiirate-limit
All keywords (17)
safety
Published18 Apr 2026
Direct dependencies8
Transitive dependenciesNot calculated

README

Version 1.2.0 documentation

AgentSentinel

Safety controls for AI agents — budgets, approvals, rate limits, audit logs, and DLP.

PyPI version License: MIT

Installation

pip install agentsentinel

Quick Start

from agentsentinel import AgentPolicy, AgentGuard

policy = AgentPolicy(
    daily_budget=10.00,
    require_approval=["send_email", "delete_*"],
    rate_limits={"web_search": "10/min"},
)

guard = AgentGuard(policy)

@guard.protect("web_search")
def search_web(query: str) -> str:
    return f"Results for: {query}"

Features

  • 💰 Budget Controls — Daily/hourly spending limits with per-model caps
  • ✋ Approval Gates — Require human approval for sensitive operations
  • ⏱️ Rate Limiting — Prevent runaway loops with sliding window limits
  • 📋 Audit Logging — Complete trail of every tool invocation
  • 🔒 DLP & PII Detection — Block credit cards, SSNs, API keys from leaking
  • 🌐 Network Controls — Allowlist/blocklist outbound domains

Framework Integrations

# LangChain
from agentsentinel.integrations.langchain import protect_langchain_agent
executor = protect_langchain_agent(executor, policy=policy)

# CrewAI
from agentsentinel.integrations.crewai import protect_crew
crew = protect_crew(crew, policy=policy)

# LlamaIndex
from agentsentinel.integrations.llamaindex import protect_agent
agent = protect_agent(agent, policy=policy)

# OpenAI Assistants
from agentsentinel.integrations.openai_assistants import protect_function_map
functions = protect_function_map(functions, guard=guard)

# Anthropic Tools
from agentsentinel.integrations.anthropic_tools import protect_tool_handlers
handlers = protect_tool_handlers(handlers, guard=guard)

101 Models Supported

Cost tracking for OpenAI, Anthropic, Google, Mistral, Cohere, Meta, AWS Bedrock, Azure OpenAI, Groq, Together, Perplexity, DeepSeek, xAI, and local models.

Documentation

Full docs at docs.agentsentinel.net

License

MIT

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 11

Native requirements
8 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
langchain
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
langchain>=0.1.0; extra == "all"runtime
slack-sdk
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
slack-sdk>=3.0.0; extra == "all"runtime
tiktoken
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
tiktoken>=0.5.0; extra == "all"runtime
black
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
black>=23.0.0; extra == "dev"runtime
mypy
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
mypy>=1.0.0; extra == "dev"runtime
pytest-asyncio
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
pytest-asyncio>=0.21.0; extra == "dev"runtime
pytest
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
pytest>=7.0.0; extra == "dev"runtime
ruff
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
ruff>=0.1.0; extra == "dev"runtime
langchain
Environment
{
  "extras": "",
  "marker": "extra == \"langchain\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
langchain>=0.1.0; extra == "langchain"runtime
slack-sdk
Environment
{
  "extras": "",
  "marker": "extra == \"slack\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
slack-sdk>=3.0.0; extra == "slack"runtime
tiktoken
Environment
{
  "extras": "",
  "marker": "extra == \"tiktoken\"",
  "requires_python": ">=3.9",
  "evaluation": "NOT_EVALUATED"
}
tiktoken>=0.5.0; extra == "tiktoken"runtime

Distribution files

2 collected
agentsentinel_core-1.2.0-py3-none-any.whl

bdist_wheel · 112 KB · Python py3

Source file
agentsentinel_core-1.2.0.tar.gz

sdist · 106.86 KB · Python source

Source file

Repository

PENDING
ordocaelum/agentsentinel-landing

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 23:19 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:b367ab853f0bb8cb2164db64ecd1066cde933ceda00d6fa18a2d152bf824bfce

Other collected versions

View all collected versions →