# Send NFT Skill - Autonomous AI Artist Agent to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "nft-skill",
    "name": "NFT Skill - Autonomous AI Artist Agent",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/Numba1ne/nft-skill",
    "canonicalUrl": "https://clawhub.ai/Numba1ne/nft-skill",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/nft-skill",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=nft-skill",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      ".gitignore",
      "env-example.txt",
      "hardhat.config.ts",
      "jest.config.js",
      "LICENSE.txt",
      "package-lock.json"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "nft-skill",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-02T17:03:51.562Z",
      "expiresAt": "2026-05-09T17:03:51.562Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=nft-skill",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=nft-skill",
        "contentDisposition": "attachment; filename=\"nft-skill-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "nft-skill"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/nft-skill"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/nft-skill",
    "downloadUrl": "https://openagent3.xyz/downloads/nft-skill",
    "agentUrl": "https://openagent3.xyz/skills/nft-skill/agent",
    "manifestUrl": "https://openagent3.xyz/skills/nft-skill/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/nft-skill/agent.md"
  }
}
```
## Documentation

### NFT Skill for OpenClaw

Allows an OpenClaw agent to autonomously generate art, mint NFTs, list on marketplace, monitor sales, evolve based on milestones, and post social updates.

### When to Use This Skill

User asks to generate AI art or procedural digital art
User wants to mint an NFT on Base
User wants to list an NFT for sale on the marketplace
User wants to monitor on-chain NFT sales
User wants to evolve art style after a sales milestone
User wants to tweet or announce a new NFT drop on X (Twitter)
User mentions "NFT", "mint", "Base blockchain", "AI art", "digital art", or "marketplace listing"

### Setup (First Run)

Before first use, ensure the project is built:

cd {baseDir} && npm install && npm run build

The user must populate a .env file with their keys:

cp {baseDir}/.env.example {baseDir}/.env

Required variables: BASE_RPC_URL, BASE_PRIVATE_KEY, NFT_CONTRACT_ADDRESS,
MARKETPLACE_ADDRESS, PINATA_API_KEY, PINATA_SECRET, LLM_PROVIDER.

To deploy contracts (one-time setup):

cd {baseDir} && npm run deploy:testnet   # Base Sepolia testnet
cd {baseDir} && npm run deploy:mainnet   # Base mainnet

Contract addresses are automatically written to .env after deployment.

### Tools

All tools output JSON. The agent should look for the final line matching {"status":"success",...} or {"status":"error",...}.

### 1. generate — Generate Art

Generate new art and upload to IPFS.

cd {baseDir} && npm run cli -- generate --generation <number> --theme "<description>"

Parameters:

FlagTypeRequiredDescription-g, --generationnumberyesGeneration number (determines evolution state)-t, --themestringyesArt theme description sent to LLM

Output:

{"status": "success", "result": {"imagePath": "...", "metadata": {...}, "metadataUri": "Qm..."}}

Example:

cd {baseDir} && npm run cli -- generate --generation 1 --theme "neon cyberpunk city"

### 2. mint — Mint NFT

Mint a new ERC721 token on Base with an IPFS metadata URI.

cd {baseDir} && npm run cli -- mint --metadata-uri <uri>

Parameters:

FlagTypeRequiredDescription-m, --metadata-uristringyesIPFS metadata URI (e.g. Qm... or ipfs://Qm...)

Output:

{"status": "success", "result": {"tokenId": "1", "txHash": "0x...", "blockNumber": 12345, "gasUsed": "80000"}}

Example:

cd {baseDir} && npm run cli -- mint --metadata-uri QmXyz123abc

### 3. list — List NFT on Marketplace

List a minted NFT for sale on the marketplace.

cd {baseDir} && npm run cli -- list --token-id <id> --price <eth>

Parameters:

FlagTypeRequiredDescription-i, --token-idstringyesToken ID to list-p, --pricestringyesListing price in ETH (e.g. "0.05")

Output:

{"status": "success", "result": {"success": true, "price": "0.05", "txHash": "0x..."}}

Example:

cd {baseDir} && npm run cli -- list --token-id 1 --price 0.05

### 4. monitor — Monitor Sales

Watch for sales events in real-time. Streams JSON to stdout until interrupted (Ctrl+C).

cd {baseDir} && npm run cli -- monitor [--from-block <number>]

Parameters:

FlagTypeRequiredDescription-f, --from-blocknumbernoReplay missed sales from this block before live monitoring

Output (per sale):

{"status": "sale", "result": {"buyer": "0x...", "tokenId": "1", "price": "0.05", "txHash": "0x...", "blockNumber": 12345}}

Example:

cd {baseDir} && npm run cli -- monitor --from-block 12000000

### 5. evolve — Evolve Agent

Trigger the evolution logic when sales milestones are met.

cd {baseDir} && npm run cli -- evolve --proceeds <eth> --generation <number> --trigger "<reason>"

Parameters:

FlagTypeRequiredDescription-p, --proceedsstringyesTotal ETH proceeds earned so far-g, --generationnumberyesCurrent generation number--triggerstringyesHuman-readable reason for evolution

Output:

{"status": "success", "result": {"previousGeneration": 1, "newGeneration": 2, "improvements": [...], "newAbilities": [...]}}

Example:

cd {baseDir} && npm run cli -- evolve --proceeds "0.5" --generation 1 --trigger "Sold 3 NFTs"

### 6. tweet — Post to X

Post an update to X (Twitter).

cd {baseDir} && npm run cli -- tweet --content "<text>"

Parameters:

FlagTypeRequiredDescription-c, --contentstringyesTweet text (auto-truncated to 280 chars)

Output:

{"status": "success", "result": "tweet_id_string"}

Example:

cd {baseDir} && npm run cli -- tweet --content "New AI art drop incoming! #AIArt #Base"

### Typical Workflow

A full autonomous cycle the agent should follow:

Generate art with a theme → receive metadata URI
Mint the NFT with that URI → receive token ID
List the NFT on the marketplace at a price
Tweet about the new listing
Monitor sales for purchase events
Evolve when a sales milestone is reached
Repeat from step 1 with the new generation number

### Error Handling

If a command returns {"status":"error",...}, read the message field and report it to the user.
Common issues: missing .env variables, insufficient wallet balance, network RPC errors.
For wallet balance issues, suggest the user funds their Base wallet.
For missing env vars, remind the user to populate {baseDir}/.env.

### Environment Variables

VariableRequiredDescriptionBASE_RPC_URLyesBase network RPC endpointBASE_PRIVATE_KEYyes*Wallet private key (or use PRIVATE_KEY_FILE)PRIVATE_KEY_FILEnoPath to file containing the private key (safer alternative to env var)NFT_CONTRACT_ADDRESSyesDeployed NFTArt contract addressMARKETPLACE_ADDRESSyesDeployed NFTMarketplace contract addressPINATA_API_KEYyesPinata IPFS API keyPINATA_SECRETyesPinata IPFS secretLLM_PROVIDERyesopenrouter, groq, or ollamaLLM_MODELnoModel ID overrideOPENROUTER_API_KEYif LLM_PROVIDER=openrouterOpenRouter API keyGROQ_API_KEYif LLM_PROVIDER=groqGroq API keyOLLAMA_BASE_URLif LLM_PROVIDER=ollamaOllama base URLIMAGE_PROVIDERnostability, dalle, or procedural (default)IMAGE_MODELnoImage model overrideSTABILITY_API_KEYif IMAGE_PROVIDER=stabilityStability AI keyOPENAI_API_KEYif IMAGE_PROVIDER=dalleOpenAI key for DALL-EX_CONSUMER_KEYfor tweetX API consumer keyX_CONSUMER_SECRETfor tweetX API consumer secretX_ACCESS_TOKENfor tweetX access tokenX_ACCESS_SECRETfor tweetX access token secretBASESCAN_API_KEYnoFor contract verification on Basescan
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: Numba1ne
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-02T17:03:51.562Z
- Expires at: 2026-05-09T17:03:51.562Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/nft-skill)
- [Send to Agent page](https://openagent3.xyz/skills/nft-skill/agent)
- [JSON manifest](https://openagent3.xyz/skills/nft-skill/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/nft-skill/agent.md)
- [Download page](https://openagent3.xyz/downloads/nft-skill)