Trust and safety layer for AI workflows
Give agents access. Keep control.
Verus wraps your agents and enforces policy across every model call, tool call, and write.
How it works
One SDK. Every agent, covered.
No rebuild. Model agnostic, harness agnostic.
Prompt sanitization
Redact or tokenize sensitive input before it reaches the model.
Safe tool calls
Block tool calls that aren't permitted for the workflow.
Write protection
Redact, tokenize, or block sensitive writes to storage.
Centralized vault
Every tokenized value lives in one vault — restorable only where policy allows it.
Provenance tracking
Every value is tracked back to its source and sensitivity.
Policy engine
Write the rule once. Every agent follows it.
What's sensitive, what's allowed, what happens to it — set per workflow, inherited by every agent in it.
Same record, different rules
Clinical agent
- Diagnosis allow
- Treatment notes allow
- SSN redact
- Insurance ID redact
Billing agent
- Charges allow
- Insurance ID allow
- Diagnosis redact
- Treatment notes redact
Per step
Allow, redact, tokenize, or block.
Four outcomes, chosen per rule, per step.
Passes through unchanged.
Replaced with a marker. Not recoverable.
Replaced with a token. Restorable from the vault only where policy allows it.
The write never happens.
Built for how you work
Wraps your agent. Doesn't replace it.
Model agnostic, harness agnostic. No rewrite.
from verus import boundary
# wrap once — policy engine handles the rest
agent = boundary(
agent,
workflow="support-triage",
)
# unchanged — agent still reads and responds normally
response = agent.run(ticket)
# model input, tool calls, and writes are all governed
# by the rules assigned to this workflow
Talk to us