[package]
name = "guardflow"
version = "0.2.0"
edition = "2024"
description = "Validators and a retry-until-valid guard for LLM output, in Rust"
license = "MIT"
readme = "README.md"
repository = "https://github.com/thaicn1712/guardflow"
keywords = ["llm", "validation", "guardrails", "agent", "ai"]
categories = ["asynchronous", "development-tools"]
[lib]
path = "guardflow/guard.rs"
[dependencies]
regex = "1"
serde_json = "1"
async-trait = "0.1"
jsonschema = { version = "0.49", optional = true }
graph-flow = { version = "0.6", optional = true }
serde = { version = "1", features = ["derive"], optional = true }
serde_norway = { version = "0.9", optional = true }
[dev-dependencies]
tokio = { version = "1", features = ["full"] }
criterion = "0.8"
[features]
json-schema = ["dep:jsonschema"]
graphflow = ["dep:graph-flow"]
spec = ["dep:serde", "dep:serde_norway"]
[[bench]]
name = "overhead"
harness = false
[[test]]
name = "integration"
[[test]]
name = "json_schema"
required-features = ["json-schema"]
[[test]]
name = "graphflow_integration"
required-features = ["graphflow"]
[[test]]
name = "spec"
required-features = ["spec"]