> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# guardrails • Rust AI Agent SDK

> Guardrails Module

# guardrails

<Badge color="orange">Rust AI Agent SDK</Badge>

Guardrails Module

This module provides guardrail validation for agent outputs:

* `Guardrail` - Guardrail trait for validation
* `GuardrailResult` - Result of guardrail validation
* `LlmGuardrail` - LLM-based guardrail implementation

# Example

```ignore theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
use praisonai::guardrails::{Guardrail, GuardrailResult};

struct ContentFilter;

impl Guardrail for ContentFilter {
fn validate(&self, output: &str) -> GuardrailResult {
if output.contains("unsafe") {
GuardrailResult::failure("Content contains unsafe material")
} else {
GuardrailResult::success(output.to_string())
}
}
}
```

## Import

```rust theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
use praisonai::guardrails::*;
```

## Classes

<CardGroup cols={2}>
  <Card title="GuardrailResult" icon="brackets-curly" href="../classes/GuardrailResult">
    Result of a guardrail validation.
  </Card>

  <Card title="GuardrailConfig" icon="brackets-curly" href="../classes/GuardrailConfig">
    Configuration for guardrails.
  </Card>

  <Card title="LengthGuardrail" icon="brackets-curly" href="../classes/LengthGuardrail">
    Content length guardrail.
  </Card>

  <Card title="BlocklistGuardrail" icon="brackets-curly" href="../classes/BlocklistGuardrail">
    Keyword blocklist guardrail.
  </Card>

  <Card title="PatternGuardrail" icon="brackets-curly" href="../classes/PatternGuardrail">
    Regex pattern guardrail.
  </Card>

  <Card title="GuardrailChain" icon="brackets-curly" href="../classes/GuardrailChain">
    Chain of guardrails to run in sequence.
  </Card>

  <Card title="Guardrail" icon="brackets-curly" href="../classes/Guardrail">
    Trait for synchronous guardrail validation.
  </Card>

  <Card title="AsyncGuardrail" icon="brackets-curly" href="../classes/AsyncGuardrail">
    Trait for asynchronous guardrail validation.
  </Card>

  <Card title="GuardrailAction" icon="brackets-curly" href="../classes/GuardrailAction">
    Action to take when guardrail fails.
  </Card>
</CardGroup>

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Rust Guardrails" icon="shield" href="/docs/rust/guardrails" />

  <Card title="Rust Approval" icon="check" href="/docs/rust/approval" />

  <Card title="Rust Security" icon="lock" href="/docs/rust/security" />
</CardGroup>
