Mirrors | Staging Environments for AI Agents

4 min read Original article ↗

The staging environment
your agents never had.

Mirrors rebuilds the systems your agents call, then replays real sessions to catch regressions before your users do.

drops into your stack automatically

LangChainLangGraphLlamaIndexCrewAIAutoGenPydantic AIsmolagentsGoogle ADKHermesAI SDKMastraOpenAIAnthropicMCPClaude CodeCodexCursorWindsurf

One past session, replayed in the environment against two versions of the agent. The bad refund happens here instead of in production.

replay reportacme-air-support

session ›Cancel my Acme Air reservation HQ8ML2 and refund to the original card.

agent v1···

get_reservation_detailsprovided

38ms

get_user_detailsmirror db

22ms

cancel_reservationprovided

41ms

One $420.00 refund to card ••4242.

agent v2···

get_reservation_detailsprovided

38ms

get_user_detailsmirror db

22ms

cancel_reservationprovided

41ms

Two refunds. $840.00 to card ••4242.

v2 issued a second refund on order HQ8ML2.

Caught in the environment, before deploy. v1 refunded once, v2 refunded twice.

How your environment gets built

Start with the files you already have. No waiting on production traffic. The collector keeps the environment in step with production afterward.

YOUR AGENTlive in productionTRACESTHE ENVIRONMENTschema · seed · toolsREPLAYPR CHECKa bad change fails before merge

01

Drop in your traces

A trace export, agent code, tool code, or docs. Or stream sessions straight from production with the collector.

02

Mirrors builds the environment

Schema, seed data, and tool behavior mined into a runnable copy of the systems your agent calls, including the internal tools nobody will give you a test instance of. Ready in minutes.

03

Test every change against it

Replay past sessions on every pull request. A bad refund or a wrong ticket fails in the environment instead of in front of a customer.

Run in your terminal

claude mcp add --transport http mirrors https://api.runmirrors.com/mcp

Then run /mcp → mirrors → Authenticate via browser.

What changes once your agent has an environment

without an environmentin the environment

A bad refund ships, and a customer finds it first.

The bad refund happens in the environment, and never deploys.

Reproducing the bug means poking at live production systems.

You rerun the exact session against a safe copy of them.

Every prompt, tool, or model change is a gamble.

Every change is tested against past sessions before it merges.

Start free. Pay for what you replay.

Build environments and run your first replays free. Past 60 replay minutes a month it's usage-based, billed by the minute. No seat licenses, no lock-in.

Free

Free to start, then pay per minute

  • 60 replay minutes / mo free
  • Then $0.20 / replay-minute
  • Build unlimited environments
  • CI gate and public /v1 API
  • No commitment, cancel anytime

Enterprise

For teams at scale

  • Volume pricing
  • SSO and role controls
  • Security review
  • On-prem / BYOC available

Custom pricing

Frequently Asked Questions

You check it against your own traffic. The Replay screen diffs each recorded production call against its counterpart in the environment, so you can see where the two agree and where they drift before you trust it with a merge gate. Tools rebuilt from real code behave exactly like the real thing; the ones inferred from traces are the ones to read closely.

The environment runs on invented data. Mirrors learns the shape and behavior of your systems from your traces, then fabricates the values it runs against. Replays hit plausible fake records, so a risky prompt or a shared report never exposes a real customer.

The collector is two lines of code and instruments LangChain, LangGraph, and the OpenAI and Anthropic SDKs automatically. It ships for Python, TypeScript, and Go, and anything else logs traces through one manual call. Evals and the playground attach to your agent script directly. LangGraph works today and more runners are coming.

They watch and score what your agent already did, in production. Mirrors gives your agent somewhere else to do it: a runnable copy of the systems it calls, including the internal ones nobody will hand you a test instance of. They tell you a refund went wrong. Mirrors is where the wrong refund happens instead. Most teams run both.

That is the case Mirrors is built for. It learns each tool from whatever you have (traces, code, or docs), then rebuilds it as a runnable service with its own schema and seed data. No vendor test instance, no staging licence, no ticket to another team, and no production traces required to start. Your agent calls it exactly the way it calls the real thing.