CROSS NFT
Browse, list, buy, and offer CROSS NFTs with one sentence. Drives MarketplaceV1 and the GraphQL indexer behind crossnft.io.
Browse, list, buy, and offer NFTs with one sentence.Drives
MarketplaceV1(0x0df4…c3bc) and the GraphQL indexer behind crossnft.io by natural language. Listing, buying, offering, and canceling are all supported.
1. Install
The block below is a natural-language prompt to paste into your AI agent — not a terminal command. Your agent reads the intent and runs git clone + bash install.sh for you.
Clone https://github.com/to-nexus/skill-cross-nft into a temporary directory and run the install.sh script inside it to install the cross-nft skill into my environment. Tell me the result in one line when you're done.
Bash execution required.The skill installs Node packages and uses
viem. Environments without shell access — Claude.ai (web), ChatGPT (web), Gemini (web) — cannot run it. See §2.
After install, just talk to your agent. For write actions, ask it to "add PRIVATE_KEY to my cross-nft .env" first. Listings and accept-offer auto-run setApprovalForAll; buys and offers auto-approve the ERC-20.
Install all CROSS skills at once
Want every CROSS skill (Forge, NFT, Shop, Explorer, DEX, WAVE, Rewards, Prediction, Bridge, Stake, Points) in one shot? Use the suite bootstrap — same natural-language pattern.
Clone https://github.com/to-nexus/cross-skills-suite into a temporary directory and run the bootstrap.sh script inside it to install every CROSS skill into my environment. Tell me which skills succeeded and which failed.2. Where it runs
✅ Supported · CLI agents with Bash access
Claude Code (CLI) · OpenClaw · Cursor Composer · Codex CLI · Aider · Goose · Gemini CLI · OpenInterpreter · any other Bash-capable CLI.
❌ Not supported · Browser / hosted only
Claude.ai (web) · ChatGPT (web) · Gemini (web) · Copilot Chat (web). These environments can't execute viem / npm dependencies. Even with the SKILL.md as context, the agent only produces meta responses — the actual on-chain calls never run.
3. What you can do
Read · no auth
| Subcommand | What it does |
|---|---|
🟢 collections | Trending collections + ranking. |
🟢 token | Single NFT metadata + on-chain info. |
🟢 tokens | Tokens within a collection (filterable). |
🟢 listing | Active on-chain listing details. |
🟢 offers | Offers received or sent. |
🟢 activities | Trade / mint / list event feed. |
🟢 stats | Market stats (volume, floor, depth). |
🟢 search | Unified token / collection search. |
Write · signs on-chain tx
| Subcommand | What it does |
|---|---|
🔴 list | List your NFT for sale (auto setApprovalForAll). |
🔴 cancel-listing | Cancel an active listing. |
🔴 buy | Buy an active listing (auto-approves ERC-20). |
🔴 offer | Create an offer on a token. |
🔴 cancel-offer | Cancel your offer. |
🔴 accept-offer | Accept an incoming offer (auto setApprovalForAll). |
Auth bands. 🟢 Read · 🟡 Read · auth — 🔴 Write · signs tx — 🟣 Write · off-chain auth.
4. Try it
Paste any prompt into your agent in any language — the skill activates the same way.
이번 주 trending CROSS NFT 컬렉션 보여줘
NFT 0xa3bd4e86…fe9e 의 30164746843126 정보 줘
내 NFT 0.5 CROSS 에 리스팅해줘
리스팅 321699 구매해줘
이 NFT 에 0.3 CROSS 오퍼 넣어줘
내가 받은 가장 높은 오퍼 수락해줘
내 리스팅 전부 취소해
24시간 거래량 상위 10개 컬렉션List active CROSS NFT collections
Show me NFT 0xa3bd…/30164746843126
List my NFT at 0.5 CROSS
Buy listing 321699
Make a 0.3 CROSS offer on this NFT
Accept the highest offer I received
Cancel all my listings
Top 10 collections by 24h volume5. Command reference
| command | args | auth | mutation | description |
|---|---|---|---|---|
collections | [--sort volume_24h|floor] [--limit=20] | — | read | Trending collections. |
token | <contract>/<tokenId> | — | read | Single token detail. |
tokens | <contract> [--filter ...] | — | read | Tokens in a collection. |
listing | <listingId> | — | read | On-chain listing detail. |
offers | --received|--sent [<addr>] | — | read | Offers received or sent. |
activities | [<contract>] [--type sale|mint|list] | — | read | Event feed. |
stats | [<contract>] | — | read | Market stats. |
search | <query> | — | read | Unified search. |
list | <contract>/<tokenId> <price> [--confirm] | PK | tx | Create listing (auto-approve NFT). |
cancel-listing | <listingId> [--confirm] | PK | tx | Cancel listing. |
buy | <listingId> [--confirm] | PK | tx | Buy (auto-approve ERC-20). |
offer | <contract>/<tokenId> <price> --currency <addr> [--confirm] | PK | tx | Create offer. |
cancel-offer | <offerId> [--confirm] | PK | tx | Cancel offer. |
accept-offer | <offerId> [--confirm] | PK | tx | Accept offer (auto-approve NFT). |
6. Safety & credentials
This skill signs on-chain transactions.
| Rail | What it does |
|---|---|
| Required credential | PRIVATE_KEY (EOA, 0x + 64 hex) for any write op. Read ops need nothing. |
| Auto-approvals | setApprovalForAll(MarketplaceV1, true) on list / accept-offer. approve(paymentToken, MarketplaceV1, total) on buy / offer (exact amount, or unlimited with --max-approve). |
| Chain-id check | Aborts unless eth_chainId == 612055. |
MAX_TRADE_NOTIONAL | Per-trade cap in payment-token units. Aborts above the cap. |
CONFIRM_THRESHOLD | Trades above this (default 1) require explicit confirmation. |
MIN_GAS_NATIVE | CROSS-native floor (default 0.001). Aborts before signing if short. |
| Whitelist guard | Refuses to use a paymentToken not in whitelistedPaymentTokens(addr). |
| Activeness guard | cancel / buy / accept-offer pre-fetch the on-chain object and abort if isActive == false. |
Hosted-agent tip. Use a disposable wallet with only as much MGT / CROSS as you plan to spend that session. The skill keepsPRIVATE_KEYinprocess.envand never echoes it back to the transcript.
7. Troubleshooting
listing_not_active
The listing was already sold or canceled. Verify with: "check NFT listing 321699".
Listing isn't visible right after I create it.
The GraphQL indexer has a 5–15 s ingestion lag. The on-chain tx is final the moment it confirms; the indexer just hasn't caught up.
Offer acceptance failed.
The offerer's ERC-20 balance or approval is now insufficient. They may have used those funds elsewhere after creating the offer.
The agent says awaiting_confirm.
You hit the CONFIRM_THRESHOLD cap (default 1 unit of the payment token). Re-issue with explicit confirmation.
The agent says wrong_chain.
Your CROSS_RPC_URL is pointing elsewhere. Remove the override or set it back to https://mainnet.crosstoken.io:22001/.
Updated about 2 hours ago