Migrating from Promptfoo
EvalGuard is compatible with Promptfoo config files. Most migrations take under 5 minutes.
Quick Start
1. Install the EvalGuard CLI
npx @evalguardai/cli eval:local promptfooconfig.yaml
EvalGuard natively reads Promptfoo YAML configs. Just point it at your existing file.
2. Or convert to EvalGuard format
# evalguard.yaml
model: gpt-4o-mini
prompt: "Answer: {{input}}"
scorers:
- contains
- relevance
cases:
- input: "What is 2+2?"
expectedOutput: "4"
- input: "Capital of France?"
expectedOutput: "Paris"Config Mapping
| Promptfoo | EvalGuard | Note |
|---|---|---|
| promptfooconfig.yaml | evalguard.yaml | Same YAML format, different key names |
| providers: | model: | Single model field instead of providers array |
| tests: | cases: | Renamed for clarity |
| assert: [{ type: 'contains' }] | scorers: ['contains'] | Top-level scorers instead of per-test assertions |
| npx promptfoo eval | npx @evalguardai/cli eval:local | Same workflow, different CLI |
| npx promptfoo generate redteam | npx @evalguardai/cli scan:local | Built-in red team with 246 attack plugins |
What you gain by switching
135 built-in scorers (vs Promptfoo's ~15)
232 red team attack plugins (vs ~90)
Runtime firewall with <1ms latency
Full observability with OpenTelemetry traces
AI-SPM (Security Posture Management)
FinOps cost tracking and optimization
CI/CD quality gates (exit code 1 on failure)
Python, JS, Go, and CLI SDKs
Ready to migrate?
Start with your existing Promptfoo config. No rewrite needed.