Evaluate your AI agents all the time.
Prefactor reviews every step your agents take in the runtime, so mistakes get caught as they happen, not in a customer email at 1am on a Tuesday.
Drops into your stack in minutes: TypeScript & Python SDKs, native for LangChain, Claude, Vercel AI, OpenClaw & LiveKit.
Trusted by teams at
You evaluated 5%.
You shipped 100%.
That's the gap. Sampled scoring, unchecked judges and pre-release test suites tell you how your agents behaved in the lab. None of it tells you what your agents are doing right now, on live traffic, in front of real customers.
The 95% you didn't sample
The run that loses the account is one you never scored. You find out from the customer, not the dashboard.
Who judges the judge?
One biased judge poisons every score downstream. You're making ship or kill calls on numbers nobody verified.
Static evals are not in prod
The run that breaks in front of a customer was never in your test set. Your suite passes while prod burns.
Observability stops at the dashboard.
Reliability needs a loop.
Other tools observe and score, then hand you the problem. Prefactor wires evaluations and risk straight into action: pause a risky run for approval, or enforce a policy at runtime, through the SDK or API.
- Observe every run as traces & spans
- Evaluate with the evals you define: LLM-as-judge, technical & qualitative metrics, plus data-risk
- Act: hold, approve or block, human-in-the-loop, via SDK or API
A risky agent is caught, not just charted.
From install to enforcement.
Five steps, each a feature that's live today. Step through them:
Install in minutes
One command connects your workspace and discovers agents across your runtimes: no migration, no rip-and-replace.
Instrument your agents
Drop in the TypeScript or Python SDK, native for LangChain, Claude, Vercel AI, OpenClaw & LiveKit. Every call becomes a span.
See every run in real time
Full traces for every model call, tool and decision, with cost and data-risk attached, streaming in live.
Evaluate what matters
Run the evals you define on every step: LLM-as-judge, technical checks and qualitative metrics. Human review feeds straight back in.
Enforce, automatically or with a human
Block, throttle or require approval the moment a run crosses a line: automatically at runtime, or routed to a person. Every decision logged.
Bring any datasource into the agent run.
Custom spans aren't just markers. Pull context from any datasource (GitHub, Linear, Jira, your database, internal APIs) into the run, so every evaluation is grounded in what actually happened.
const span = pf.customSpan('enrich_review_context'); span.attach(await github.getPR(482)); span.attach(await db.customerTier(userId)); span.score({ grounded: true }); // → grounds every eval
Ship agents like software: versioned, staged, promoted.
Prefactor versions every agent, tracks it against a schema, and promotes it through dev, staging and prod only when its evals pass, so you can compare scores version-to-version and prove each one is better than the last.
when evals pass→
when evals pass→
One layer over every agent, editor and workflow.
Native SDK integrations for the agent frameworks you build on, plus the coding tools and workflow platforms your team already uses.
Core SDK
Connected through native SDKs, OpenTelemetry, and a TypeScript & Python core SDK that instruments anything else.
Built for enterprise security.
Agents act with real access, so Prefactor is built around least privilege, full auditability and your existing identity stack: the enforcement layer beneath the reliability story.
What you need to know
What is agent observability?
What is agent evaluation?
How do I instrument my agent with Prefactor?
What are custom spans, and how do they measure quality?
How does human-in-the-loop work?
How does Prefactor enforce at runtime?
Why do AI agents need identity and scoped access?
See Prefactor on your own agents.
Free for your first 5,000 spans a month. Drop in the SDK and watch your own runs get scored, live. Or take the 30-minute walkthrough with an engineer.