abx.
Using ABX

Quickstart

The fastest way through this page is to not read it. Copy this into your coding agent — Claude Code, Cursor, Codex, Gemini, or Copilot:

💬 "Read https://abx.docs.artblocks.io/docs/using-abx/quickstart and set up abx. Then help me launch ⟨your idea⟩ on testnet."

Replace ⟨your idea⟩ with what you actually want to make before you paste. An unfilled placeholder is not a brief — if an agent deploys a demo or asks you to sign without asking what you want, tell it to stop.

Your agent installs the toolkit, checks the setup, and starts building with you. The rest of this page is what it — or you — needs to know.

What you need

  • Node 22.13+ — check with node --version. Anything older and abx refuses to start (it needs Node's built-in SQLite, which was flag-gated before 22.13).
  • A browser wallet (e.g. MetaMask) with a little Base Sepolia test ETH. Coinbase's faucet is the usual path (≤ 1 min). If it asks you to log in or isn't available in your region, any Base Sepolia faucet that does not require mainnet ETH is fine — the CLI has no preferred vendor. (Alchemy/QuickNode faucets that require an existing mainnet balance are a dead end for a first wallet.)
  • A coding agent — any of the majors.

ABX is testnet only today: Base Sepolia (default) and Sepolia. There is no mainnet deploy yet. Pick the chain with ABX_CHAIN (unset = Base Sepolia).

No RPC to configure, no private keys to paste. 🎉

Set up — two commands

npm install -g @artblocks/abx-cli
abx doctor

abx doctor checks your environment and offers to install the agent skill — press Enter to accept. The skill teaches your agent the entire workflow, and doctor keeps it honest: when you upgrade the CLI later, it notices a stale skill and offers the resync.

Agents and scripts: abx doctor --fix installs the skill without asking. Targeting a specific agent, or installing globally: abx skill install. Working inside a repo? A per-project install pins the version.

Say what you want

That's the whole interface. These get progressively less specified, which is the point — the last two don't describe a command at all:

💬 "Take ./cat.png and launch it as a 1/1 NFT on testnet. Store the image on Arweave so it outlives me."

💬 "Launch this image as an open edition anyone can mint for 0.001 ETH."

💬 "Deploy this folder of 200 images as a collection and mint them all."

💬 "Help me launch my sketch.js as a generative drop with a live on-chain preview."

💬 "I want to create a new NFT creation app that incorporates PostParams, layered generative geometry patterns, and off-chain agentic workflows. Use ABX protocol and skill."

💬 "I want to create ⟨your idea here⟩. Let's develop the idea and launch with ABX!"

(Same rule: replace the brackets. Leaving them in is how a session ships a demo nobody asked for.)

If your agent doesn't seem to know what abx is, name it"use the ABX skill", the way the fourth prompt does. Agents load skills when a request looks relevant, and a prompt about a creative project doesn't always read as one.

Your agent picks the commands, custodies your files, deploys the contract, and sets up the sale — and asks you only the calls that are truly yours: where it's hosted, how permanent storage should be, what a mint costs. You approve each transaction in your wallet; nothing is stored on your behalf.

Where to next

On this page