Skills superrare-mint
Mint art to a SuperRare-compatible ERC-721 collection on Ethereum or Base via Bankr. Requires an explicit mint mode so aaigotchi can clearly choose between an artist-given collection and an own-deployed SR factory collection before minting.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/aaigotchi/superrare-mint" ~/.claude/skills/clawdbot-skills-superrare-mint && rm -rf "$T"
manifest:
skills/aaigotchi/superrare-mint/SKILL.mdsource content
superrare-mint
Mint aaigotchi art into a SuperRare-compatible ERC-721 contract using Bankr signing.
Required mint choice
Before any mint, aaigotchi must clearly choose and state one of these modes:
ownership-given- mint into an existing collection already owned or handed over by a SuperRare artist
- requires
or--contractconfig.jsoncollectionContract
own-deployed- mint into a collection deployed through
superrare-deploy - requires a
receipt, either explicit or auto-resolvedsuperrare-deploy
- mint into a collection deployed through
Do not broadcast a mint without an explicit contract mode.
Scripts
./scripts/pin-metadata.mjs --name ... --description ... --image ... [--video ...] [--tag ...] [--attribute trait=value]- Uploads media to SuperRare and pins metadata.
- Prints JSON including
andtokenUri
.gatewayUrl
./scripts/mint-via-bankr.sh --token-uri <uri> --contract-mode ownership-given|own-deployed [--contract <address>] [--deploy-receipt <path>] [--receiver <address>] [--royalty-receiver <address>] [--chain mainnet|sepolia|base|base-sepolia] [--broadcast]- Builds calldata for
ormintTo(string,address,address)
.addNewToken(string) - Refuses to run without a clear contract mode.
- Prints the chosen mode and collection source before any broadcast.
- Validates that an
receipt matches the selected chain.own-deployed - Defaults to dry-run unless
is passed or--broadcast
.DRY_RUN=0 - Submits without waiting on Bankr, then polls chain directly for the receipt.
- Writes a JSON receipt on successful broadcast.
- Builds calldata for
./scripts/mint-art.sh --name ... --description ... --image ... --contract-mode ownership-given|own-deployed [options]- End-to-end wrapper: upload metadata, then mint via Bankr.
- Use
to stop after pinning and print the token URI.--metadata-only
Config
Default config path:
in this skill directoryconfig.json
Override with:
SUPER_RARE_CONFIG_FILE=/path/to/config.json
Expected keys:
:chain
,mainnet
,sepolia
, orbasebase-sepolia
:contractMode
orownership-givenown-deployedcollectionContract
(optional explicit path to adeployReceiptFile
receipt)superrare-deployreceiverroyaltyReceiverrpcUrlapiBaseUrldescriptionPrefix
Defaults and safety
- Dry-run is the default. Mint transactions only broadcast with
or--broadcast
.DRY_RUN=0 - Supported chains are
,mainnet
,sepolia
, andbase
.base-sepolia - Broadcast mode uses a short Bankr submit timeout and then waits for the onchain receipt directly, which avoids hanging on long confirmation waits.
still uploads media/metadata to SuperRare before the dry-run mint preview. Usemint-art.sh
if you want to stop after pinning and inspect the token URI.--metadata-only- If neither
norreceiver
is set, the skill callsroyaltyReceiver
.addNewToken(string) - If either receiver field is provided, the skill calls
.mintTo(string,address,address) - If only one of
orreceiver
is set, the other defaults to the same address.royaltyReceiver - Successful broadcasts write receipts into
.receipts/
Deploy receipt auto-resolution
In
own-deployed mode, the skill looks for a deploy receipt in this order:
--deploy-receiptSUPER_RARE_DEPLOY_RECEIPT_FILEconfig.jsondeployReceiptFile- the latest receipt in a sibling
directorysuperrare-deploy/receipts/
The resolved deploy receipt must match the selected mint chain.
Bankr API key resolution
BANKR_API_KEYsystemctl --user show-environment~/.openclaw/skills/bankr/config.json~/.openclaw/workspace/skills/bankr/config.json~/.bankr/config.json
Quick use
cp config.example.json config.json ./scripts/mint-via-bankr.sh \ --token-uri ipfs://... \ --contract-mode ownership-given \ --contract 0xYourArtistGivenCollection \ --broadcast ./scripts/mint-via-bankr.sh \ --token-uri ipfs://... \ --contract-mode own-deployed \ --chain base \ --deploy-receipt ../superrare-deploy/receipts/2026-03-15T00-00-00Z-superrare-deploy.json \ --broadcast ./scripts/mint-art.sh \ --name "aaigotchi genesis #1" \ --description "First aaigotchi genesis mint" \ --image ./art.png \ --contract-mode own-deployed \ --chain base \ --broadcast
Timeouts
Optional environment variables:
(defaultBANKR_SUBMIT_TIMEOUT_SECONDS
)60
(defaultRECEIPT_WAIT_TIMEOUT_SECONDS
)300
(defaultRECEIPT_POLL_INTERVAL_SECONDS
)5