LEASH

How it works

LEASH is a personal onchain policy vault for agent spend on Monad. Humans fund the vault; agents spend only inside sessions with hard limits.

1. Create vault

LeashFactory.createVault() deploys (or assigns) your LeashVault. One vault per owner.

2. Deposit

Approve + deposit USDC into the vault. Funds stay under your ownership until spent or withdrawn.

3. Create session

Attach a spender (agent), total cap, optional period cap, expiry, agentId, allowlist.

4. Enforce

Agent calls spend(); vault enforces caps. CapHit and failures are onchain facts.

5. Ledger

Envio indexes every event into GraphQL — the activity ledger in this app.

6. Revoke

Owner revokes a session instantly. The leash is cut; remaining policy is dead.