A living lab for tool-using agents

Test the agent.
Preserve the world.

Grow repeatable agent behavior inside a sealed office ecology—email, calendar, files, chat, and CRM—before a single action reaches a real customer or system.

Deterministic replay · zero API keys · Python standard library
5stateful app species
15inspectable tools
3bundled run cultures
0network calls in demo

The problem / unsafe evaluation

A test that touches production is already an incident surface.

Agent quality is contextual. A model can produce a plausible answer while skipping policy, mutating the wrong record, or taking the right action for the wrong reason.

“Did it work?” is not enough. You need to know what the agent read, what it changed, and whether the world was identical.

Terrarium replaces shared sandboxes and mocked return strings with a resettable stateful environment. Every tool call, read, write, and resulting state transition becomes part of the evidence.

Live exposure surface

Direct live test5 app surfaces
Terrarium replay0 live surfaces

The sealed demo uses a local SQLite snapshot and vendored run bundles. The comparison never contacts email, calendar, files, chat, CRM, a model API, or another deployed service.

The product thesis

Treat AI behavior like a specimen, not a score.

A credible comparison starts with environmental control, retains the behavioral trace, and ends with evidence tied to state.

01

Reset the habitat

Copy the exact world snapshot for every run. Pin task, world, grader, and seed so the comparison has a controlled baseline.

02

Observe the phenotype

Record every dispatched tool call, read, write, latency, and payload. The trajectory is evidence, not debugging exhaust.

03

Score the state

Evaluate what changed and how it changed. Keep failure and undetermined outcomes explicit instead of forcing a flattering mean.

Evidence / bundled assay TRM-01

Three behaviors enter the same world. Their outcomes diverge.

These are the actual results in the repository: one task, seed 42, three recorded traces, three criteria, and a deliberate failure.

Criteria expressed

State + trajectory evaluations passed by each specimen

Failure drill
1/3
Gemini 2.5 Flash
3/3
Llama 3.3 70B
3/3

Behavior becomes lineage

One passing trace: policy read → CRM update → customer reply

0102 0304 0506 0708

The failure still sends a reply. Its trace proves that policy was never read and CRM was never triaged—evidence a final answer hides.

20observed trace events
7/9criteria passed
430–1540recorded latency, ms
$0.00replay cost

Architecture / deterministic by construction

A short path from task to inspectable evidence.

The CLI, app modules, and MCP-shaped stdio surface share one world dispatch path. No hidden evaluation service is required.

TASK

Define

Fixture, success criteria, mutations, and content hashes become a TaskSpec.

COPY

Reset

An exact SQLite snapshot becomes an isolated run world.

CALL

Dispatch

Five app modules expose 15 tools through the same logged call path.

EVAL

Observe

State and trajectory graders emit a portable run bundle and static report.

$ git clone https://github.com/Aneesh-Pothuru/terrarium
$ cd terrarium
$ make demo

TERRARIUM demo: replayed 3 bundled runs
report: docs/demo/index.html

Interactive observatory

Step inside the glass world.

Select a recorded behavior culture. Start, pause, step, or reset the interactive replay. Watch tool activity move through the chamber, world state mutate, and criteria resolve from vendored evidence. Installed live sessions use the persistent HTTP service in the repo.

Launch the observatory →

About / honest alpha

Small enough to audit. Real enough to learn from.

Terrarium v0.1 is a transparent research substrate, not a claim of production-complete orchestration or full protocol conformance.

What ships

  • Resettable SQLite world with five stateful app modules
  • Stable task, world, and grader hashes
  • Tool/read/write trace bundles and world diffs
  • Oracle, null-agent, and mutation validity gates
  • Keyless CLI, report, replay, diff, and stdio flows

What it does not claim

  • Production authentication, tenancy, or secret management
  • Full MCP protocol conformance or remote transport
  • A universal benchmark or real-model leaderboard
  • Network isolation beyond the intentionally offline demo path
  • Replacement for application-specific safety review