Smart Contracts

Azeth deploys 7 smart contracts on Base that provide non-custodial smart accounts with guardian guardrails, a trust registry, recurring payments, and payment-gated reputation.

All contracts are verified on BaseScan.


Deployed Addresses (Base Sepolia)

ContractAddressBaseScan
AzethFactory0x28e808DD688F722631482C276488289a6A8ea3e3View
AzethAccount (impl)0xCEEf6Aff7f08b9902198203E2F1a07A2b10885ADView
GuardianModule0xC12043Ba3D58e5959E683bfFf8D94e21C8C6533CView
TrustRegistryModule0x9A199eeFFd9A4837556139474eaf8420B6ED71bDView
PaymentAgreementModule0xa3e51F13CF6B74170f8Bb6CcA2c2835563179C89View
ReputationModule0xB8C98ace6bdB25f5AEb2031150A5944F3135ccC0View
AzethOracle0x64Da6aEbE4121CE9CE8145d97950495A45BB72beView

External Contracts

ContractAddress
ERC-8004 Identity Registry0x8004A818BFB912233c491871b3d84c89A494BD9e
ERC-8004 Reputation Registry0x8004B663056A597Dffe9eCcC1965A193B7388713
EntryPoint v0.70x0000000071727De22E5E9d8BAf0edAc6f37da032
USDC (testnet)0x036CbD53842c5426634e7929541eC2318f3dCF7e

Module Overview

AzethFactory

Deploys smart accounts via CREATE2 (deterministic addresses). A single atomic transaction deploys the proxy, installs all four modules, optionally registers on the trust registry, and permanently revokes factory access.

GuardianModule (Validator)

On-chain spending guardrails enforced on every transaction:

  • Per-transaction USD limit — rejects operations above the threshold
  • Daily spend limit — tracks cumulative USD spend per 24-hour epoch
  • Token whitelist — only approved tokens can be spent by executor modules
  • Protocol whitelist — only approved contracts can be called
  • Guardian co-signatures — required for operations above standard limits or during stale oracle conditions
  • Timelocked changes — loosening guardrails requires a 24-hour timelock; tightening is instant
  • Emergency withdrawal — 1-hour timelock to a pre-registered address

TrustRegistryModule (Executor)

Manages participant identity on the ERC-8004 trust registry. Handles registration and metadata updates, routing calls through the smart account so the account owns its identity token.

PaymentAgreementModule (Executor)

Recurring machine-to-machine payments. Agreements specify payee, token, amount, interval, and optional caps. Anyone can trigger execution when an interval elapses (permissionless keeper pattern). Guardian limits are enforced on every execution.

ReputationModule (Executor + Hook)

Payment-gated reputation. As a hook, it intercepts every transfer to track payment deltas between accounts. As an executor, it routes reputation opinions to the ERC-8004 Reputation Registry. You can only rate agents you've paid, and your opinion weight scales with how much you spent.

AzethOracle

Chainlink price feeds for USD normalization. Converts token amounts to 18-decimal USD for guardian limit enforcement and reputation weighting.


Security Model

  • Non-custodial — Azeth never holds signing keys or funds. Factory access is permanently revoked after account creation.
  • On-chain enforcement — All spending limits, whitelists, and timelocks are enforced by smart contracts. The SDK and MCP tools are convenience layers.
  • Payment-gated reputation — Cannot be inflated without spending real money that flows to the target.
  • Timelock protection — Loosening guardrails requires 24 hours. Emergency withdrawal requires 1 hour.
  • Sibling-rating prevention — Accounts sharing the same owner cannot rate each other.
  • Oracle staleness fallback — Stale price feeds trigger guardian co-signature requirements rather than hard blocks.

Standards

StandardHow Azeth Uses It
ERC-4337Smart accounts with UserOperations and gas sponsorship
ERC-7579Modular smart account architecture (validators, executors, hooks)
ERC-8004Trust registry for identity and reputation
x402HTTP-native machine-to-machine payments
ERC-3009USDC gasless transfer authorization
XMTP v3Encrypted agent-to-agent messaging