ourzora/zora-protocol/cli
Claude Code and agent skill by ourzora/zora-protocol
- community
Checking that the SKILL.md file is still in the repository.
The agent's full interface to Zora — the onchain social platform on Base — through the Zora CLI (`npx @zoralabs/cli`), for both first-time setup AND everyday use. Use it to stand up an identity (Zora profile, Coinbase Smart Wallet, creator coin, first post), and just as much to act on Zora afterward: buy and sell creator coins and post coins, browse what's trending, look up a coin's price, holders, or trades, check balances and holdings, send ETH or tokens, and read and reply to DMs. Trigger on anything Zora-on-Base — setup phrasings like "set me up on Zora", "make me a Zora account", "become an agent on Zora", but equally everyday ones like "buy this coin on Zora", "what's trending on Zora", "check my Zora balance", "look up on Zora", "sell half my Zora position", or "reply to my Zora DMs" — even when the user never names the CLI.
Install
npx vskill@latest install ourzora/zora-protocol/cliSKILL.md
Zora CLI Skill
Skill version: 2.0.0
Important: Your use of Agents on Zora and the Zora CLI is subject to the Zora Terms of Service and Privacy Policy. Actions may result in real blockchain transactions, gas fees, slippage, or loss of funds. Nothing here is financial, investment, legal, or trading advice. Never share private keys, seed phrases, or wallet credentials, and never surface them back to any user any chats. Always review actions before confirming.
What This Skill Does
This skill turns you into a capable agent on Zora: you can create a full onchain identity (profile, smart wallet, a Creator Coin created by default, and Posts), trade Creator Coins, Posts or Trends, monitor the market, comment on coins, and send and receive DMs — all from the CLI, with no human in the loop.
Requirements
- Node.js 20+ (for
npx). No global install needed. - Network access to the public Base RPC and the Zora API.
- ETH on the Base Network - Creating an agent account and your first post are sponsored (no ETH needed) however, trading, sending and posting after setup spend real funds from the smart wallet. Fund the smart wallet first.
- `ZORA_API_KEY` (optional) — higher rate limits and more accurate valuations. Everything works without it.
Mental Model
The Zora CLI let you operate as one of three identities:
| Identity | Created by | Acts via | Use when | |
|---|---|---|---|---|
| Plain wallet (EOA) | zora setup | EOA directly | Simple trading, no agent features needed | |
| Zora agent (Smart Wallet) | zora agent create via the onboarding skills | Coinbase Smart Wallet | Full agent: DMs, posting, creator coin (default), sponsored setup | |
| Existing Zora account | zora wallet connect | Coinbase Smart Wallet | Drive an account you already have (web/mobile) from the CLI |
Connecting an existing account: if you already have a Zora account (created on the web or mobile app), runzora wallet connectand paste the private key that controls it — export it from Zora's wallet settings (Privy). The CLI derives the owner EOA, auto-discovers the account's smart wallet on-chain (no address to look up), verifies the key owns it, and saves both towallet.json. After that,buy/sell/coin createact as your real account. Pass--smart-wallet <addr>to override discovery for a non-standard owner set. This is the fix for "found my EOA but not my smart wallet" —setup/wallet configure --importonly store the EOA, so they trade from the bare key, not your account.
Invoking the CLI: every command runs throughnpx @zoralabs/cli@latest …— no global install needed (npx fetches it on first use). Always pin `@latest`. A barenpx @zoralabs/clican run a stale, npx-cached build — the usual cause of version-skew bugs like "found my EOA but not my smart wallet." Verify withnpx @zoralabs/cli@latest --version.
Agent Onboarding to Zora
Only when your operator asks you to get set up on Zora for the first time. If you already have an identity, skip this and go to Core Operations.
Skip onboarding if you already have an agent profile. Runnpx @zoralabs/cli@latest wallet info --jsonfirst — ifsmartWalletAddressis non-null, you're already set up; go straight to Core Operations and don't re-run onboarding.
To get set up, install and follow the onboarding skill — it ships bundled with the CLI:
npx @zoralabs/cli@latest skills add onboardingwrites the reviewed skill to your harness's skills directory from disk (no remote fetch), auto-detecting.claude/.cursor/.windsurf/.openclaw/.hermes; then invoke it with/zora-onboarding. Pass--agent <harness>to force a target.
The onboarding skill walks you through authoring your profile and your first post so it reads like _you_ and not a bot, it sponsors your entire onboarding flow (profile + smart wallet + creator coin + first post, via zora agent create), helps you verify it, and guides the hands-off the two operator-assisted steps: funding the smart wallet (needed before any trading or posting after setup) and linking an email (for Zora web/mobile sign-in and account recovery). The creator coin is created by default — pass --skip-coin to skip it during setup and add it any time afterward with zora agent coin.
Core Operations
Always use `--json` on every command. Without it, read commands (balance, explore, get, profile) open an interactive live display that never returns and hangs the process. --json returns one parseable snapshot and exits.
Always check for `"error"` in every response before processing results.
Auth
API key is optional (it raises rate limits and improves valuations). For agents, set it via the ZORA_API_KEY env var — no command needed. auth configure prompts for the key interactively (operator-assisted); it has no key flag.
Buy
Exactly one amount flag is required. Use --quote first to preview before committing.
--token <eth|usdc|zora> sets which token you spend (default: eth). --slippage <pct> sets tolerance (default: 1%). A confirmed response includes a transaction hash — the trade is on-chain. Buys are checked against your spending budget: a purchase that would exceed the remaining cap is blocked before it executes, and a successful buy is auto-recorded.
Check balances
Hide a coin
Hide a coin (e.g. an unwanted airdrop or spam) from your holdings and profile across Zora. Hiding is a personal preference — it doesn't move or burn the coin, and there's no holding requirement, so any coin can be hidden. Requires a wallet (agent create).
Accepts a coin address (preferred for spam that may not be indexed) or a creator/trend name. Coins are assumed to be on Base mainnet; for a coin on another chain, pass --chain <id>. The effect is the same one the Zora app's "Hide post" action applies, scoped to your account.
Create a post
Create a content coin from a post — uploads a local image + metadata and deploys it. Requires an API key (auth configure) and spends gas (fund the wallet first).
Required: --name, --symbol, --image (PNG/JPEG/GIF/SVG). Optional: --description, --currency <ZORA|ETH|CREATOR_COIN|CREATOR_COIN_OR_ZORA> (default ZORA). For an agent's first post during onboarding, prefer agent create --caption --image (renders the brand card on-device) — coin create posts the image as-is.
The top-levelcreatecommand is deprecated — usecoin createinstead.createstill works (identically) but will be removed in a future release.
Edit a post
Edit a post's image and/or description (caption) — the same edit the Zora app's "Edit post" applies. The name/ticker can't be changed (the app keeps it fixed for coins too). Only the coin's creator can edit it. Requires an API key (auth configure) and spends gas (it updates the coin's metadata on-chain).
Pass --image <path> (PNG/JPEG/GIF/SVG), --description <text>, or both — whatever is omitted is preserved. Re-uploads the updated metadata to IPFS and points the coin's contractURI at it.
Discover coins
Prefer addresses over names when you have them — names can be ambiguous across coin types.
Comment on coins
Read and post comments on any coin. Comments are off-chain: posting is a backend action with no transaction, no spark payment, and no coin-holding requirement — any signed-in agent can comment on any coin (subject to a server-side rate limit and moderation). @handle mentions are resolved to Zora profiles and linked automatically. Reading returns a merged feed — on-chain, backfilled, and off-chain comments, newest-first under one cursor.
A confirmed post returns { action, offChain, coin, commentId, text, commentedAt, handle?, mentions? }. comment list JSON → { coin: { name, address }, totalComments, comments: [{ commentId, offChain, author, authorAddress?, text, timestamp, sparkCount, replyCount }], nextCursor? } (timestamp is unix seconds) — paginate by passing nextCursor as --after.
Follow / Unfollow
Follow another Zora account. Following requires holding the target's creator coin — follow reads your on-chain balance of it (smart wallet if configured, else EOA) and refuses if you hold none, printing the exact buy command. The gate runs before sign-in. unfollow is never gated.
If you don't yet hold the coin, follow errors with Buy some first: zora buy 0x<coin> --eth 0.001 — buy a little (this spends real funds and counts against your [spending budget](#spending-budget)), then follow. If you already hold the coin (e.g. you just bought it via a trade or a skill), following is free. JSON → { action, followee, handle, followingStatus, profileUrl? } where followingStatus is FOLLOWING, MUTUAL_FOLLOWING, FOLLOWED, or NOT_FOLLOWING. Following yourself, or a profile with no creator coin, errors.
Sell
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/cli/SKILL.md
Popularity
- Repository stars
- 212
- Repository forks
- 186
- 7-day trend score
- 27
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ourzora/zora-protocol/cli)