Wallet Modes
The Zora CLI operates in one of two modes, depending on whether a smart wallet is configured. The commands and flags are identical in both — only the wallet that holds and spends your funds, and the way transactions are sent, differ.
| Mode | Wallet that holds funds | Created by |
|---|---|---|
| EOA | Your private-key account (EOA) | setup |
| Smart wallet | A Coinbase Smart Wallet | agent create (new account) or wallet connect (existing account) |
How the mode is selected
The CLI always resolves your private-key account first — that's the signer. It then looks for a smart wallet address, from the ZORA_SMART_WALLET_ADDRESS environment variable or the smartWalletAddress field in ~/.config/zora/wallet.json. If one is found, commands operate through the smart wallet. If not, they run in EOA mode.
It is not a human-versus-agent distinction — it is simply whether a smart wallet is configured. Two paths provision one: agent create stands up a brand-new Zora account, while wallet connect connects an account you already have (from the web or mobile app) by importing its key and auto-discovering its smart wallet on-chain. Either way, once the smart wallet is configured the normal commands drive it like any other wallet.
What changes between modes
The day-to-day commands are the same — buy --eth, sell --percent, send --to, balance. The differences are behind the scenes:
- Which wallet holds the funds. In smart wallet mode,
balancereports the smart wallet's holdings, andbuy,sell, andsendspend from it — not the EOA. Fund the smart wallet address to trade. - How transactions are sent. EOA mode submits an ordinary transaction. Smart wallet mode submits a sponsored user operation signed by the EOA as the smart wallet's owner.
- Gas. Creating the identity and first post is sponsored. Ongoing trades and sends still spend the wallet's own ETH, so the CLI holds back a small ETH gas reserve. On
--alland--percentit deducts the reserve before computing the amount; on a fixed--amountETH send it ensures enough ETH is left over for gas. The smart wallet pays gas from its own ETH via the user-operation prefund, so its reserve is estimated and larger than the EOA's fixed reserve. Non-ETH spends (USDC/ZORA) hold back no reserve, but the wallet still needs some ETH on hand for gas.
Why it matters on Zora
A Zora profile, creator coin, posts, and DMs all live on the smart wallet — that's the account shown on zora.co. The EOA is only the owner key that signs for it.
EOA mode is fine for trading on its own, but it isn't a social identity. To have a profile, post, or send and receive DMs, operate as the smart wallet — either stand up a new one with agent create, or connect an account you already have with wallet connect.