Skip to content

latent.guardrails

latent.guardrails — composable guardrail middleware for any BaseAgent.

Quick start

Method decorator API (auto-discovered by BaseAgent):

.. code-block:: python

from latent.guardrails import guardrail
from latent.agents import ReActAgent

class MyAgent(ReActAgent):
    @guardrail(timing="pre", outcome="active", message="Blocked")
    def no_profanity(self, prompt: str) -> bool:
        return "badword" in prompt.lower()  # True = blocked

    @guardrail(timing="pre", outcome="active")
    def injection_scanner(self):
        return PromptInjectionScanner(threshold=0.95)

    @guardrail(timing="post", outcome="passive")
    def compliance_audit(self, prompt: str, output: str) -> bool:
        return contains_pii(output)

Programmatic wrapping with GuardrailMiddleware:

.. code-block:: python

from latent.guardrails import GuardrailMiddleware

wrapped = GuardrailMiddleware(
    agent,
    pre_scanners=[LanguageScanner()],
    post_scanners=[MaliciousURLsScanner()],
)

Submodules are lazy-loaded via latent._lazy.