Skip to main content
TL;DR: For content protection, pass a DomeHookProvider to your Strands Agent’s hooks. For full Agent security, pass the Agent to secure_agent() instead.
Strands Agents accept a list of hook providers that fire on lifecycle events. Dome ships a hook provider for content protection and a Trust Runtime adapter for full Agent security.

Choosing a Protection Level

The DomeHookProvider registers input and output Guards on the Agent’s model-call events. Install the Strands extra (pip install "vijil-dome[strands]").
DomeHookProvider guards inputs and outputs asynchronously on every model call. The agent_id, team_id, and user_id arguments are optional and flow through to Dome for telemetry. You can customize input_blocked_message and output_blocked_message.

Next Steps

Trust Runtime

Identity, tool permissions, and attestation

Configure Guardrails

Choose which Guards run
Last modified on July 16, 2026