Skip to content
GONATURELLE

Production-grade evaluation for high-stakes AI agents.

One harness from trace capture to merge gate: sandboxed runs, expert-labelled suites, calibrated judges and signed evidence.

Python 3.10+ and Node.js 20+ SDKs · GitHub Actions, GitLab CI, CircleCI · HIPAA BAA on every plan

Five stages between a prompt change and a merge.

Click a stage to see what runs there and the payload it hands to the next one. The same pipeline runs on a laptop, in CI and inside your VPC.

01 / ingestion-sdk

Ingestion SDK

A decorator or callback handler records every model call, tool call, argument, tool result and state write as an ordered trajectory. Nothing in your agent code changes beyond the wrapper.

{
  "run_id": "run_7f3c2a",
  "agent": "prior-auth",
  "step": 3,
  "type": "tool_call",
  "tool": "submit_prior_auth",
  "args": { "cpt_code": "73721", "units": 1 },
  "parent_step": 2,
  "redactions": ["member_dob"]
}

Four pillars, each walked through in three steps.

The parts you configure, in the order you configure them.

Pick a pack, add your own cases, pin a version.

Packs are scoped to a single regulated workflow, not a whole industry. Prior authorization is a different pack from SOAP-note summarization because the failure modes and the reviewers differ.

datasetsstep 1 of 3
healthcare/clinical-prior-auth-v21,840 cases
healthcare/soap-note-summarization2,210 cases
healthcare/triage-escalation1,460 cases

Why the architecture asserts on steps and calibrates its judges.

of prompt-only pull requests changed at least one tool-call trajectory in a multi-turn suite while the final-answer score stayed flat.
41%
of prompt-only pull requests changed at least one tool-call trajectory in a multi-turn suite while the final-answer score stayed flat.
GONATURELLE regression study, 2026 (1,180 PRs across 14 production agents)
of multi-step agent failures in the catalog were tool-argument schema or parameter-boundary violations, not reasoning breakdowns.
32.8%
of multi-step agent failures in the catalog were tool-argument schema or parameter-boundary violations, not reasoning breakdowns.
GONATURELLE Failure Modes Catalog analysis, 2026
Cohen's kappa against physician, attorney and analyst consensus: calibrated GONATURELLE judge ensembles versus an uncalibrated single-prompt judge.
0.87 vs 0.42
Cohen's kappa against physician, attorney and analyst consensus: calibrated GONATURELLE judge ensembles versus an uncalibrated single-prompt judge.
GONATURELLE calibration study, 2026 (6,400 double-annotated cases)
Best function-calling agent's pass^8 on tau-bench retail tasks.
under 25%
Best function-calling agent's pass^8 on tau-bench retail tasks.
Yao et al., tau-bench, arXiv:2406.12045 (2024)

What GONATURELLE does not do.

Clear scope is part of the evidence. Reviewers trust a tool that says where it stops.

Offline evaluation engine: zero added latency on production requests.
  • Not a runtime firewall or latency proxy

    GONATURELLE runs offline, before deployment and on every change. It does not sit in your request path, inspect live traffic or block a production response in 500 ms. Pair it with your own runtime guardrails.

  • Not a substitute for clinical, legal or actuarial judgment

    Credentialed reviewers label our packs and calibrate our judges, but a passing suite is evidence for your experts to review, not a replacement for their sign-off on a deployment.

  • Not a certifier

    We do not issue government certifications, legal compliance certificates or FDA clearance. Reports document testing you performed; your organization remains accountable for deployment decisions and regulatory filings.

  • Synthetic cases are generated for evaluation only and are not real medical or financial records. Nothing on this page is legal or medical advice.

Your framework stays. GONATURELLE attaches at the edges.

Framework adapters translate native callbacks and events into one trajectory format. In-house loops call the trace context manager directly.

All 16 integrations
agent_loop.pycustom loop
import gonaturelle

@gonaturelle.trace(agent="claims-intake")
def handle(claim: dict) -> str:
    with gonaturelle.step("tool_call", tool="lookup_policy") as s:
        policy = lookup_policy(claim["policy_no"])
        s.record(args={"policy_no": claim["policy_no"]}, result=policy)
    with gonaturelle.step("tool_call", tool="open_fnol") as s:
        fnol = open_fnol(policy_id=policy["id"], loss_date=claim["loss_date"])
        s.record(args={"policy_id": policy["id"]}, result=fnol)
    return summarize(fnol)
ordered steps argument provenance PHI redaction on client zero agent rewrite

Governance a model risk committee can audit.

Role-based access per suite

Owner, admin, engineer, reviewer and auditor roles. Thresholds and baselines can be locked so only a named reviewer group can change a gate.

auditor: read runs, export
reviewer: edit thresholds
engineer: run, propose

Append-only audit trail

Who changed which threshold, which dataset version, which judge weight, and when. Every entry links to the run it affected.

14:02 n.joshi raised kappa floor 0.75 to 0.80
13:41 ci promoted baseline a41e9c0
11:17 v.choudhary pinned pack 2.3.0

Exportable compliance packages

Annex IV technical documentation sections, GMLP-aligned validation summaries and model-governance packs, built from signed run manifests.

annex-iv-section-2.pdf
gmlp-validation-summary.pdf
manifest.sha256

SSO, SCIM and data residency

SAML SSO with Okta or Microsoft Entra ID, SCIM deprovisioning, US or India regions, single-tenant VPC or air-gapped Kubernetes.

SAML 2.0 · Okta
SCIM 2.0 · auto deprovision
region: ap-south-1

Frequently asked questions

Does GONATURELLE run in our production request path?

No. GONATURELLE is an offline pre-production and regression evaluation engine. It runs on pull requests, merges, nightly schedules and on demand, against sandboxed copies of your agent. It adds no latency to production traffic, and it is not a runtime firewall.

Do we need to rewrite our agent to use it?

No. The Python and TypeScript SDKs wrap your existing entry point with a decorator or attach a framework callback (LangChain, LangGraph, LlamaIndex, CrewAI, Semantic Kernel, DSPy, OpenAI Agents SDK, AutoGen). Custom loops emit steps with a single trace context manager.

What happens to side-effecting tools during a run?

Tools that write, pay, submit or send are bound to recorded fixtures or stubs inside the sandbox. You choose per tool whether to replay a fixture, call a sandbox endpoint you host, or fail the case if the agent tries to invoke it.

Where does the data live?

In the multi-tenant US or India cloud, in a dedicated single-tenant VPC on AWS, GCP or Azure, or in a self-hosted air-gapped Kubernetes deployment. A HIPAA BAA is available on every plan and model providers we call operate under zero data retention terms.

Can we use GONATURELLE alongside LangSmith, Braintrust or Arize?

Yes, and many teams do. Keep your tracing and experiment tools for observability and iteration; use GONATURELLE for expert-validated vertical suites, deterministic trajectory assertions, calibrated judges and the merge gate. Traces can be promoted into GONATURELLE cases through OpenTelemetry or file export.

Stop testing regulated agents on generic prompts.

Run your agent against 100 industry-standard clinical or financial edge cases in 5 minutes. 14-day free production trial, no card.