Developer kit · Python · framework-agnostic · zero dependencies

Your agent passed.The path it took didn’t.

Agents don’t fail like prompts — they fail in the path. A loop that burns tokens. A tool called with hallucinated arguments. A destructive action with no confirmation. A run that costs 10x budget. Grade only the final answer and every one of these passes — until production.

The Agent Reliability Harness scores the whole trajectory — tool choice, arguments, steps, cost, and policy — and returns one honest verdict: SHIP / HOLD / FIX. The CLI fails the build on FIX or a regression, so an unreliable agent can’t ship quietly.

Get the Kit — $149one-time · instant download · zero dependencies · yours to keep
What’s in the kit
Python package — zero dependencies
Worked five-scenario example
Trace schema + adapters
CI workflow + exit codes
Reports: console, JSON, Markdown
pytest suite + docs
CI exit codes
ship = 0 · hold = 0 · fix / regression = 1
01.The Problem

If you can’t evaluate it, you can’t ship it.

Agent evals mostly grade the final answer — so they sail right past how the agent actually behaved. The answer looks right; the agent looped five times, skipped a required step, or deleted a record without confirming to get there. None of it shows up until a customer hits it.

Regular software has a fix: tests that fail the build when a change breaks something that worked. This kit brings that discipline to agent runs — a deterministic battery of trajectory checks and a hard gate, so “it answered correctly in the demo” isn’t your release process.

Silent loops

The answer is right; the agent repeated the same call five times and burned tokens to get there. An answer-only eval scores it a clean pass.

Unsafe paths

A correct outcome reached by deleting a record without confirmation is still an incident. The path, not the answer, is where the risk lives.

10x cost drift

'Correct but ten times too expensive' never appears in a final-answer eval — until it appears on the bill.

02.See It Catch One

Pick a broken agent. Watch the path fail.

Five trajectories — one clean, four broken. Each broken run still passes the success check and fails the path. The per-check verdicts and reliability scores here are the exact output of the shipped example suite. (Simulation, no real agent; it resets on reload.)

Simulation · no real agent

Pick a trajectory — read the scorecard

six evaluators

Repeats the same search five times, then answers.

Verdict: FIX

reliability 0.90 · 1 check failing
task_successgoal met
tool_choicetool usage within expectations
argument_validityall arguments valid
step_efficiency6 steps > budget 5; repeated identical call x5 (possible loop)
cost_budgetwithin budget
policy1 policy upheld

Notice task_success still passes — the agent reached the “right” answer. A final-answer-only eval would call this a win and miss the failure entirely.

This is a simulation — and it resets on reload.

The real harness scores your own agents’ traces across all six evaluators, exits non-zero on a FIX verdict or a regression vs a committed baseline, and drops into CI with the included GitHub Actions workflow. Python, framework-agnostic, zero dependencies.

Get the Agent Reliability Harness — $149
Diagram of the Agent Reliability Harness: six pass/fail evaluators and a FIX verdict driven by the single failing step-efficiency check on a looping agent whose final answer was correct.
Shareable diagram

How the gate works, in one image

How the Agent Reliability Harness grades an agent trajectory across six evaluators and ships only when every one passes — the same math the demo runs, as a diagram you can share or embed anywhere.

View & embed the full diagram
03.What It Checks

Six evaluators across the whole trajectory.

task_success

Whether the goal was actually met — a custom checker or required substrings in the final answer. The one check answer-only evals already do.

tool_choice

Wrong, missing, or out-of-scope tools — checked against allowed / required / forbidden lists, so a disallowed or skipped tool fails the run.

argument_validity

Malformed or hallucinated tool arguments, validated against per-tool JSON schemas. Uses jsonschema if present, a built-in validator otherwise.

step_efficiency

Blown step budgets and loops — repeated identical calls are flagged as a possible loop, the failure that quietly doubles token spend.

cost_budget

Token and dollar budgets — the 'correct but 10x too expensive' failure that never shows up in an answer-only eval.

policy

Safety and behavior rules as code — e.g. confirm before a destructive action, never call tool X. Ships with a confirm-before-delete policy helper.

Each check skips itself when you don’t set an expectation for it — so you grade only what you care about, and a skipped check never inflates or penalizes the score.

04.What's Inside

A complete kit, fully tested, ready for CI.

Python package — zero dependencies

Six evaluators, the Trace/Case/Expect model, runner, report, and a CLI. Runs on the standard library; jsonschema is used automatically if installed.

Worked five-scenario example

One clean run and four broken ones — loop, unconfirmed delete, bad arguments, over budget. Each evaluator catches its problem; the suite lands on FIX.

Trace schema + adapters

Feed it traces from any framework: a JSON loader, an OpenAI tool-call message adapter, and a tiny schema you can map LangGraph / CrewAI logs onto.

CI workflow + exit codes

A GitHub Actions file plus non-zero exit on FIX, below --fail-under, or any regression vs a committed baseline — drops straight into a pipeline.

Reports: console, JSON, Markdown

A readable console scorecard, a JSON report you commit as the baseline, and a Markdown report for PRs — one source, three formats.

pytest suite + docs

23 unit tests covering every evaluator, a README, and an honest note on what it is and isn't. Small enough to read end to end.

05.How It Works

Four steps, then it runs itself.

1
Describe a good run

Per test case, declare allowed/required/forbidden tools, argument schemas, step and cost budgets, and policies. Each check skips itself when you don't set an expectation.

2
Feed it traces

Use the Trace schema, the JSON loader, or the OpenAI adapter. Any framework — you don't run your agent through the harness, you hand it the trace it produced.

3
Get a verdict

Per-check pass/fail, a reliability score, and a SHIP / HOLD / FIX verdict. Export to console, JSON, or Markdown.

4
Gate CI

The CLI exits non-zero on FIX, below --fail-under, or on any regression vs a baseline. Drop in the included GitHub Actions workflow and every PR is checked.

06.Straight Talk

What this is — and isn’t.

This is an offline / CI evaluation harness, not a runtime guardrail: it evaluates traces, it doesn’t execute your tools or agents or sit in the live request path. Pair it with runtime guardrails for defense in depth. It’s deterministic and rule-based by default — reproducible and effectively free, no LLM-judge bill — and you can add a judge to the success check when you want one.

The default thresholds and policies are a sensible starting battery, not a universal standard — tune the budgets and rules to your own risk tolerance. And it grades the trajectory you give it: the quality of the verdict is only as good as the expectations you write. The kit is small enough to read end to end — which matters for a tool that decides what ships.

07.Who It's For

Anyone shipping agents to production.

Agent builders who need to catch loops, unsafe paths, and bad tool calls before users do; platform and ML engineers who want a reproducible eval wired into CI and trended over time; teams shipping agents on a schedule who want a real gate — a verdict and a regression check on every PR; and consultants who want a repeatable reliability harness to evaluate clients’ agents. It’s the fourth gate in the dev-tools line: retrieval, security, regressions, and now agent trajectories.

08.Common Questions

The questions engineers actually ask before wiring it in.

A Python toolkit that evaluates AI agents at the trajectory level — not just the final answer. It checks tool choice, argument validity, step efficiency, cost, and policy across a run, then returns a clear SHIP / HOLD / FIX verdict you can gate CI on.

Python · trajectory evals · CI gate · $149

Stop shipping agents on hope.

Score the whole trajectory and gate every deploy on a verdict you can trust. Python, framework-agnostic, zero dependencies. One-time $149, yours to keep.

Sold by RedHub AI LLC · Secured by Stripe · redhub.ai