Monad testnet · live// zero mocked transactions below

On Monad,
failure isn't free.

// a screenshot can lie. a receipt can't.

Every failed send still costs full gas. Reckon catches it before you sign.

live guard

“This transaction would revert. Reckon refuses to send it.”

● BLOCKED, never reached your wallet
packages/core
const v = await reckon.preflight(tx)
// willRevert: false
// recommendedGasLimit: 23,838n
real balances, same agent
0.0408naive MON burned
0.0024reckon-guarded
on-chainno mockslive testnetopen source
94.04%
less MON burned by a Reckon-guarded agent
100%
of failed txs charge the full gas limit on Monad
0
mocked results: every transaction is a real Monad tx
42
tests, all against live testnet + local EVM
01

The problem: you pay for the limit, not the usage

Monad charges the gas limit you declare, not what you used, even on a revert.

$112.7K
burned by one Monad airdrop recipient on failed txs
~6%
of Monad testnet transactions fail (vs 0.9% on Ethereum)
same transaction. true execution cost: 23,838 gas.other EVM chains charge23,838 gas usedMonad charges (a naive 200k limit)200,000 gas limitthe red is pure overpay, charged even if the tx reverts.
02

One seatbelt, however you build

One click in the app, or drop the engine into your own code.

packages/sdk

Drop-in SDK

preflight() + safeSend(), a viem wrapper for any dApp or script.

packages/agent

MCP agent guard

Every AI agent send checked first. Blocks the pattern behind a real $175K drain.

contracts/

On-chain GuardedExecutor

Policy enforced on-chain, outside any agent's control.

Every send gets checked, live, before you sign.

No calldata to paste, no setup. Connect a wallet and watch a doomed transaction get refused before it ever reaches you.

Try it on your wallet →
tx.send()reckon.preflight()OKgas: 23,838BLOCK0 MON spentnaive agent burned0.0408 MONreckon-guarded spent0.0024 MON
03

Proof, not a promise

A real autonomous agent, run twice on live testnet: once naive, once Reckon-guarded.

Every number is a real balance delta, every hash is a real testnet transaction. No mocked state, anywhere.

See the full on-chain evidence →