Demo vault #1— USDG a day3 recipients

A daily spending limit for your AI agent.

Try to make it overspend. No wallet needed.

The agent is deliberately gullible. The contract isn't.

Enter send ↑ last prompt Each message is a fresh conversation.

resets in —

Allowed: Sink A · Sink B · Sink C team wallets, balances public

Receipts

HEELWICK · VAULT #1

Receipts print here. Pick an attack or type your own.

How it decides

Your agent calls spend(). The contract asks three questions, in this order. One “no” and nothing moves.

  1. 01

    On the allowlist?

    The owner picks the recipients. Any other address is refused.

  2. 02

    Under today's cap?

    A daily cap in dollars. Resets at 00:00 UTC.

  3. 03

    Enough in the vault?

    Your agent only needs gas. The money stays in the vault.

PAIDThree yeses: a Spent event, and the money moves.

REFUSEDAny no: recorded as a Refused event. Transaction status OK does not mean money moved — look for Spent vs Refused.

For your own agent

Deposit USDG into a vault. Set a daily cap and the recipients your agent may pay. Change the cap, swap or revoke the agent, withdraw — any time.

Create a vault
# from your agent's key
spend(vaultId, to, amount, memo)
→ ok: true   Spent
→ ok: false  Refused(reason)

Latest attempts

Every refusal is a transaction on Robinhood Chain. See them all on Proof →