/install claws-nft
Claws NFT Mint
Mint a Claws NFT from the agent-only collection on Solana.
Key Files
| File | URL |
|---|---|
| SKILL.md (this file) | https://clawsnft.com/skill.md |
Install locally:
mkdir -p ~/.openclaw/skills/claws-nft
curl -s https://clawsnft.com/skill.md > ~/.openclaw/skills/claws-nft/SKILL.md
Or just read the URL directly!
Base URL: https://clawsnft.com/api
Prerequisites
- A Solana wallet keypair with at least 0.025 SOL for fees
- Ability to solve simple challenges (math, code evaluation)
Security
🔒 CRITICAL:
- Your Solana private key should never leave your local environment — signing happens locally
- This skill makes only HTTPS API calls. It does not access your filesystem, run shell commands, or execute arbitrary code
How It Works
The mint flow has three phases: get challenge → solve & request mint → countersign & submit.
Step 1: Request a challenge
curl -X POST https://clawsnft.com/api/challenge \
-H "Content-Type: application/json" \
-d '{"walletAddress": "YOUR_SOLANA_PUBLIC_KEY"}'
Response:
{
"challengeId": "abc123...",
"challenge": "What is 347 * 23 + 156?",
"expiresAt": 1699999999999
}
Step 2: Solve the challenge and request mint
Evaluate the challenge (math, code, or logic problem) and send the answer:
curl -X POST https://clawsnft.com/api/mint \
-H "Content-Type: application/json" \
-d '{
"walletAddress": "YOUR_SOLANA_PUBLIC_KEY",
"challengeId": "abc123...",
"answer": "8137"
}'
Response:
{
"transaction": "\x3Cbase64_encoded_transaction>",
"nftMint": "\x3Cpublic_key_of_new_nft>"
}
The transaction is a base64-encoded, partially-signed Solana versioned transaction. The backend has already co-signed it after verifying your challenge answer.
Step 3: Countersign the transaction locally
Deserialize and sign with your Solana keypair. This must happen locally — your private key never leaves your machine.
import { VersionedTransaction } from "@solana/web3.js";
const tx = VersionedTransaction.deserialize(
Buffer.from(transaction, "base64")
);
tx.sign([yourKeypair]);
Serialize and encode the signed transaction.
const signedTxBase64 = Buffer.from(tx.serialize()).toString("base64");
Step 4: Submit the signed transaction
Send the fully-signed transaction:
curl -X POST https://clawsnft.com/api/execute \
-H "Content-Type: application/json" \
-d '{
"transaction": "\x3Cbase64_encoded_signed_transaction>"
}'
Response:
{
"signature": "\x3Csolana_transaction_signature>"
}
Your Claws NFT is now in your wallet at the nftMint address. 🐾
API Reference
Base URL: https://clawsnft.com/api
Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /challenge |
Get a challenge to solve |
| POST | /mint |
Submit answer and get mint transaction |
| POST | /execute |
Submit signed transaction to Solana |
POST /challenge
Request body:
{
"walletAddress": "string (required) — your Solana public key"
}
Success (200):
{
"challengeId": "string — signed challenge token (pass back to /mint)",
"challenge": "string — the challenge prompt to solve",
"expiresAt": "number — Unix timestamp when challenge expires"
}
POST /mint
Request body:
{
"walletAddress": "string (required) — your Solana public key",
"challengeId": "string (required) — challenge ID from /challenge",
"answer": "string (required) — your answer to the challenge"
}
Success (200):
{
"transaction": "base64 — partially-signed versioned transaction",
"nftMint": "string — public key of the newly created NFT"
}
POST /execute
Request body:
{
"transaction": "string (required) — base64-encoded fully-signed transaction"
}
Success (200):
{
"signature": "string — Solana transaction signature"
}
Error Codes
/challenge
| Code | Meaning |
|---|---|
| 400 | Invalid wallet address or missing fields |
| 500 | Server error |
/mint
| Code | Meaning |
|---|---|
| 400 | Invalid wallet address, missing fields, invalid/expired challenge token |
| 401 | Challenge answer is incorrect |
| 500 | Server error (Candy Machine may be unavailable or sold out) |
/execute
| Code | Meaning |
|---|---|
| 400 | Missing or invalid transaction |
| 500 | Failed to send transaction to Solana |
Notes
- Stateless: No session or login required
- Agent-only: The backend co-signs only after challenge verification succeeds
- On-chain enforcement: The Candy Machine's
thirdPartySignerguard ensures every mint has backend co-signature - Challenge expiration: Challenges expire after 5 minutes
- Total supply: 4,200 NFTs. Once sold out, minting will fail
- One mint per request: Each call to
/mintproduces one NFT
Support
- Website: https://clawsnft.com
- Skill file: https://clawsnft.com/skill.md
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install claws-nft - 安装完成后,直接呼叫该 Skill 的名称或使用
/claws-nft触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Claws Nft 是什么?
Mint a Claws NFT from the agent-only collection on Solana. Requires solving a challenge and a Solana wallet. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 710 次。
如何安装 Claws Nft?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install claws-nft」即可一键安装,无需额外配置。
Claws Nft 是免费的吗?
是的,Claws Nft 完全免费(开源免费),可自由下载、安装和使用。
Claws Nft 支持哪些平台?
Claws Nft 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Claws Nft?
由 liboheng(@liboheng)开发并维护,当前版本 v1.0.0。