Sui Overflow 2026 / Walrus track / 4th place

Your agents act.You set the limits.

Spending controls for AI agents. Set policies and budgets, simulate payments before signing, and verify why each decision passed or was blocked.

The missing control point

Agents act fast. Bad transactions move faster.

A wallet can verify a signature. It cannot decide whether an agent's reasoning was safe. Praxis adds that decision boundary before funds move.

  1. 01 / INTENT

    The agent chooses the wrong action.

    Prompt injection or faulty reasoning can redirect funds, oversize a transfer, or target an unknown recipient.

  2. 02 / POLICY

    The transaction crosses a hard limit.

    Per-transaction limits, daily limits, blocked recipients, failed simulations, and excessive gas need a gate before signing.

  3. 03 / EVIDENCE

    The explanation disappears after execution.

    Without a durable decision record, an operator can see that funds moved but cannot reconstruct the agent's intent and simulation report.

One controlled handoff

Decision first. Signature second.

The report returns to the agent before the wallet is asked to sign, so the agent can self-correct on evidence instead of guessing.

Agentdecides what to spend
Praxissimulate / risk-score / gate
Walletsigns the transaction
Every decision is written to a Walrus audit trail with a tamper-evident on-chain receipt.
Authority stays separated

The agent decides. The wallet keeps control.

Praxis is the evidence-producing boundary between autonomous intent and wallet authority.

Agent

Decides, but never receives the private key.

The agent submits intent and receives the simulation report before it confirms or aborts.

Praxis

Simulates, scores, and enforces policy.

Seven built-in risk rules inspect the dry-run result before any request reaches signing.

Wallet

Keeps signing authority.

The wallet adapter signs only after the simulation and policy gate return a proceed decision.

Audit

Records both approvals and interventions.

Walrus reasoning and a tamper-evident on-chain receipt preserve why a spend ran or stopped.

Sui Testnet previewSUI paymentsHosted reasoning is public
One guarded spend path

Put the report inside the agent loop.

The agent sees simulated balance changes, gas, risk findings, and the gate recommendation before it decides whether to continue.

agent-spend.tspre-sign gate
const result = await praxis.spend({
  to: recipient,
  amount: 5_000_000n,
  reasoning: { prompt, decision, model },
  onReport: (report) =>
    report.recommendation === "proceed",
});

// confirmed | aborted + simulationReport
Decision boundary ready

Let the agent act. Keep every spend accountable.