Replay Guard binds every agent decision to a single-use signed nonce. The nonce is consumed when the action runs. Trying to replay the same decision later, or replaying an approval signature outside its window, fails. Stale decisions cannot leak into the future.
When an agent prepares an action, the platform issues a nonce: a random 256-bit value, signed with the platform key, bound to the action id, the agent, and a 5-minute window. The action runner verifies the nonce signature, checks the binding, marks the nonce consumed, and only then runs the tool call. After consumption, the same nonce never works again.
Default nonce TTL is 5 minutes. After expiry, the nonce is rejected even if it was never consumed. This catches the case where an agent prepares an action, the operator approves it, and then somehow the action does not run for an hour. By the time it gets dispatched, the world has changed; the original analysis is stale; the nonce expired prevents stale execution.
Approvals are signed nonces too. When you approve action-9421 from the Approval Queue, the platform creates a nonce bound to that exact action id and your user id. That signature does not work on action-9422, even if the actions look identical. Lifted signatures do not roam.
Successful replays should be zero. Replay attempts (presenting an already-consumed or expired nonce) are loud signals: someone is misusing the system, or there is a bug. The page shows attempts in red with the source IP and the action they tried to replay. Even one failed attempt warrants a look.
Subscribe to Nova AI Ops on YouTube for demos, tutorials, and feature deep-dives.
A captured screenshot of an approval QR is harmless. A leaked decision bundle replayed tomorrow does not run. The nonce is the difference.