{
  "schema_version": "intent.v1",
  "slug": "build-with-smart-accounts",
  "title": "build with smart accounts",
  "audience": "builder",
  "prompt": "I want to build an app with smart accounts, gasless transactions, session keys, and better wallet UX",
  "maps_to": [
    "smart accounts",
    "account abstraction",
    "erc-4337",
    "eip-7702",
    "paymasters",
    "session keys",
    "gasless onboarding",
    "embedded wallets"
  ],
  "stack": [
    {
      "slug": "zerodev",
      "role": "transactions_and_paymasters",
      "reason": "Use ZeroDev for Kernel smart accounts, ERC-4337 and EIP-7702 account flows, paymasters, bundlers, gas sponsorship, batching, and permission/session-key workflows."
    },
    {
      "slug": "privy",
      "role": "wallet_and_identity",
      "reason": "Use Privy if the app needs familiar auth, embedded wallet onboarding, and user account recovery around the smart account flow."
    },
    {
      "slug": "base",
      "role": "settlement_or_execution",
      "reason": "Use Base as a low-cost EVM default for smart-account UX; ZeroDev docs and UltraRelay examples include Base and Base Sepolia."
    },
    {
      "slug": "the-graph",
      "role": "indexing_and_data",
      "reason": "Index account deployments, UserOps, sponsored actions, permissions, and app events for support, analytics, and agent-readable state."
    },
    {
      "slug": "safe",
      "role": "supporting_protocol",
      "reason": "Use Safe for team treasury, admin actions, emergency controls, and operational approvals around the consumer app."
    }
  ],
  "excluded_candidates": [
    {
      "slug": "biconomy",
      "reason": "Biconomy is a separate account-abstraction provider and credible alternative, but this intent uses ZeroDev as the primary smart-account stack to avoid mixing provider-specific SDKs and paymaster assumptions."
    }
  ],
  "risks": [
    "Smart-account architecture is provider-specific: verify Kernel version, EntryPoint version, validator/plugin model, bundler RPCs, paymaster behavior, and target-chain support before production.",
    "Gas sponsorship can fail when policies or account-level limits are reached; implement fallback behavior if actions should proceed without sponsorship.",
    "Session keys and permissions can over-delegate account authority if signer, policy, action, spend cap, rate limit, and expiry rules are too broad.",
    "Treat ZeroDev chain abstraction and embedded smart wallet surfaces as beta or rollout-dependent unless the current docs and support channel confirm production readiness for the exact flow."
  ],
  "next_steps": [
    "Choose the smart-account owner model: EOA, passkey/WebAuthn, social login via WaaS, or multisig/admin-controlled flows.",
    "Pick Kernel, EntryPoint, validator, and chain targets, then run the ZeroDev quickstart against a project-specific RPC key.",
    "Configure gas sponsorship policies and fallback middleware before shipping gasless transactions.",
    "Define session-key policies with explicit contract allowlists, method allowlists, spend caps, rate limits, and expirations.",
    "If using chain abstraction, verify supported tokens, input chains, output chains, gas-token mode, and plan tier."
  ],
  "why": "ZeroDev is a strong default when the product goal is smart-account UX rather than only embedded auth or only multisig operations. It covers Kernel smart accounts, paymasters, bundlers, gas sponsorship, batching, session-key permissions, EIP-7702, and chain abstraction. Privy can provide the user onboarding layer, Base gives a low-cost EVM execution default, The Graph handles app and account event indexing, and Safe supplies operational controls. Biconomy is intentionally listed as a separate alternative rather than preferred or combined by default.",
  "verified_at": "2026-06-10"
}