Tarmac Agent

Concepts · 4 min read

Why test an agent before it gets a wallet

Agents fail in ways unit tests don't catch. A simulated wallet shows what yours actually tries to do.
← All articles

An on-chain agent turns a sentence into transactions. Between the two sit a model, a prompt, a set of tools and a market that moves while the agent is thinking. Each of those can change what gets signed.

Unit tests check that your functions return what you expect. They don't check what the agent decides to call, in what order, with which amounts, when a quote comes back worse than planned. That is where real losses come from.

What a test run should answer

  • What did the agent try? Every tool call, with its exact inputs and outputs.
  • Which rules did it follow? Every policy check, passed or failed, recorded independently of what the agent says about itself.
  • What changed? Wallet balances before and after, in integer base units.
  • Would it behave the same in a different market? The same instruction against deep and thin liquidity.

Why simulated funds

A simulation gives the agent a real-looking wallet with no real value in it. In Tarmac that wallet is ephemeral: it is created for one run, funded on a fixture market or an isolated fork, and thrown away. The agent never holds a key; it can only request actions through typed tools, and every request passes the same policy layer.

A passing simulation is evidence, not a guarantee. Markets, contracts and models change. Rerun your scenarios whenever any of them do.