← Protocols
ZeroDev
01Description

ERC-4337 / ERC-7579 smart account infrastructure built on Kernel — the most widely deployed modular smart account. Provides bundler, paymaster, and a viem-compatible SDK with pluggable validators (passkeys, ECDSA, session keys, multisig).

02Best for
  • 01modular smart accounts
  • 02session keys
  • 03passkey signers
  • 04gas sponsorship
  • 05recovery flows
03Install
  • pnpm add @zerodev/sdk @zerodev/ecdsa-validator viem
04Environment variables
VariableScopeDescription
NEXT_PUBLIC_ZERODEV_PROJECT_IDClientZeroDev project ID from the ZeroDev dashboard; used to derive bundler and paymaster RPC URLs.
05Prompt snippet
Use ZeroDev for ERC-4337 smart accounts on EVM chains. Build a Kernel account with `createKernelAccount({ plugins: { sudo: ecdsaValidator }, entryPoint, kernelVersion })` and wire it through `createKernelAccountClient({ account, chain, bundlerTransport, paymaster })`. Use `signerToEcdsaValidator` for an EOA signer or the WebAuthn / passkey validator for keyless flows. Send sponsored UserOps with `kernelClient.sendUserOperation({ calls: [...] })` and wait via `waitForUserOperationReceipt`. Pull the project ID from `NEXT_PUBLIC_ZERODEV_PROJECT_ID`.
06Gotchas
  • Kernel ships multiple versions — `KERNEL_V3_1` requires EntryPoint v0.7, older versions use v0.6. Mismatched versions cause silent UserOp reverts.
  • Session keys are powerful but easy to misconfigure: scope permissions tightly (target, selector, value cap, expiry) or you risk granting full account control.
  • ZeroDev is EVM-only and per-chain — each chain needs its own bundler URL; deploying to a new chain requires enabling it in the dashboard first.
  • Paymaster sponsorship is policy-gated on the server: free tiers cap monthly sponsored gas, and policy rejection returns at submission time, not simulation.
  • Smart account address is counterfactual until first deploy — don't assume the account contract exists on-chain before its first transaction.
07Alternatives