The agent wants to pay
SOL
Your policy
SOL
SOL
SOL
Guard decision · 1 SOL to AgmL…zN51
Reading AgmL…zN51’s on-chain history and verifying Vera’s signature…
Swap one call
agent.ts
import { VeraGuard } from 'veralayer';
const guard = new VeraGuard({
connection,
policy: { minTier: 'medium', dailyLimitSol: 20 },
});
// was: connection.sendTransaction(tx, [agent])
await guard.sendTransaction(tx, [agent]);vera resultreal · signed
{
"score": 55,
"tier": "medium",
"reasons": [
"No flagged counterparties and address itself not listed.",
"High-frequency wallet with 3000+ transactions read; not necessarily new.",
"21 unrecognised programs, about 20% of program calls."
],
"signature": "24wBzNhtanuaMGwVdc7x…",
"method": "vera-v1+claude-opus-5.5"
}How it works
- 1
Read
Last 100 transactions, wallet age, who funded it.
- 2
Score
Deterministic 0–100 from on-chain features.
- 3
Explain
Claude may adjust by ±15, citing a feature.
- 4
Sign
ed25519, verified locally before your policy runs.
A score is a signal, not a guarantee. Results are signed, not yet anchored on-chain. The VeraLayer team receives a share of the token’s trading fees; holding it does not affect any score.