Block, route, or approve agent actions in real time in CrewAI agents — without rewriting your code, without adding a proxy to the request path.
The problem
CrewAI is great at what it does, but production-grade policy enforcement is bring-your-own. Most teams discover this when the first production incident hits, the first OpenAI bill arrives, or the first auditor asks for evidence.
Specifically:
- Crew-level cost easily runs 5-10× single-agent cost — opaque without tooling
- Role-based access control isn't enforced — any agent can call any tool
- Long task chains can drift without continuous evaluation
How Prefactor solves it
Prefactor wraps your CrewAI Crew and adds policy enforcement as a runtime layer. Specifically:
- require approval for tool calls affecting customer data
- block tool calls when PII appears in args
- enforce per-agent spend caps
- rate-limit specific agents
- policy-as-code for compliance teams
Install and integrate
pip install prefactor-crewai
from crewai import Crew
from prefactor import Prefactor
pf = Prefactor(api_key="pf_live_...")
crew = pf.wrap(Crew(agents=[...], tasks=[...]), crew_id="research-crew")
Specific use cases
- Require approval for tool calls affecting customer data
- Block tool calls when pii appears in args
- Enforce per-agent spend caps
- Rate-limit specific agents
- Policy-as-code for compliance teams
FAQ
Does this add latency? Per-span instrumentation adds ~2-5ms. Telemetry ships asynchronously. No synchronous network call in the agent's hot path unless you enable blocking policy enforcement.
Can I configure this per-agent? Yes. Policy Enforcement settings are per-agent — different agents can have different policies, sampling rates, retention, etc.
Is this compatible with other observability tools? Yes. Prefactor exports OpenTelemetry; works alongside Datadog, Langfuse, LangSmith, and others.
Related
Start free
[Get started free →] [Book a demo →]