Simulation for AI agents

Simulated worlds to test and train AI agents.

deltaZ builds working copies of the systems your agent uses, like Gmail, Slack, Stripe or your own API. It runs your agent through hundreds of scenarios on every change and tells you what broke, where, and how to fix it, before your customers find out.

Early access. We are working with a small group of agent teams.

Twins for GmailSlackStripeDatadogSalesforceJiraYour own API (OpenAPI)
What you can do

Know how your agent behaves before it touches the real thing.

A small change to a prompt, a tool description or a model can quietly break an agent. Most teams find out from users. deltaZ gives you a safe place to find out first.

Test

Test any scenario

Pick a system, a starting state and the feature you care about. deltaZ generates the scenarios, from the happy path to the messy cases: slow APIs, locked records, missing permissions, users who change their mind.

Example: broadcast email agent on Gmail

Gate

Gate every change in CI

Run the full suite on every commit, prompt edit and model upgrade. If behavior gets worse, the merge is blocked and you see the exact step where the agent went wrong.

Works with GitHub Actions, GitLab CI, any runner

Improve

Turn failures into fixes

Each failure comes with a suggested change to the prompt or tool. For teams that train their own models, failed and corrected runs become training data.

For API models and open models

Compare

Compare agents on the same terms

Every agent runs in the same worlds against the same checks, so scores mean the same thing across versions, models and vendors.

Useful for model swaps and vendor evaluation

How it works

From API spec to a verdict on your pull request.

Your agent connects to the twins the same way it connects to production: over the normal API or MCP. Nothing in your agent needs to change.

  1. Pick the world

    Choose a ready-made twin, or upload an openapi.yaml and a sample of traces. deltaZ builds a stateful copy with the same endpoints, rules and realistic data.

  2. Set the scenario

    Pick a starting state and a feature. deltaZ writes the test cases and lets you add your own. Faults like timeouts and locks can be injected at any step.

  3. Run in parallel

    Each run gets a fresh, isolated copy of the world. Hundreds of runs finish in minutes, and nothing touches your real systems.

  4. Read the verdict

    Checks look at what the agent actually did, not just what it said. You get pass or fail, the step that failed, and a suggested fix.

A worked example

One sentence, 180,000 tokens, two credits.

This walkthrough uses sample data. It shows the kind of failure that slips past normal tests and how deltaZ surfaces it.

A billing agent applies a credit to a customer account in the company's ERP. The team edits the system prompt and ships version three.

In the twin, deltaZ locks the database record halfway through the write. The agent retries without checking what already happened, uses 180,000 tokens and posts the credit twice.

deltaZ compares v3 to v2 and finds the cause: a sentence about locked records was removed. It blocks the merge and proposes the fix. With the fix, the same 1,000 runs go from 7.4% failures to 0.3%.

All of this happens in the twin. Your real ledger is never touched.

run 0417 · apply_credit · record lockedSample data
  1. 00:00.0POST /credits {account: "A-2291", amount: 120.00}agent starts the credit
  2. 00:00.4fault injected: row lock on ledger_entriesdeltaZ simulates a lock held by another process
  3. 00:01.9409 Conflict · "record locked"
  4. 00:02.1POST /credits (retry 1 to 14)no read of the account before retrying
  5. 00:41.7check failed: credit posted 2×, expected 1×180,214 tokens used
  6. diffsuggested fix to system prompt
    + If a record is locked, wait, then read the account and confirm the credit is not already applied before you retry.
Built for real systems

The details that make a test worth trusting.

A test is only useful if the world behaves like the real one and the check measures what matters. That is where we spend our time.

Stateful twins

Emails stay sent, charges stay charged. Each action changes the world the way the real system would.

Fault injection

Timeouts, rate limits, locks, partial failures and bad data, placed at the exact step you choose.

Reset in seconds

Every run starts from a clean, known state, and runs execute in parallel.

Checks on outcomes

Code checks the end state where it can, like "was the card charged once?" A model grades the rest.

Failure paths

See the full trace of a failed run and the step where it went wrong, not just a score.

Any framework

Agents connect over plain HTTP or MCP. LangGraph, the OpenAI or Claude SDKs, or your own code.

Versioned suites

Scenarios and checks live next to your code, so a change to the tests is reviewed like any other change.

Training data

Export failed runs with corrected trajectories, ready for fine-tuning or prompt optimization.

Why we built this
Before Apollo 11 left the ground, it had landed on the Moon over and over, in simulation. When an alarm fired minutes before the real landing, mission control had seen it before. Agents deserve the same: a world to practice in before the real one.

deltaZ product demo · 2:57 · numbers shown are sample data

Early access

Ship agent changes with the same confidence as code.

We are onboarding a few teams who are building agents on top of real systems. Tell us what your agent does and which systems it touches, and we will set up a first suite with you.

Email the founders hello@deltaz.ai
Write to us