CROSS Shop

Buy in-game items with one sentence. Drives the cross.shop game web-shop (rohan2 / seal-m / rom) and pays on-chain in CROSS or BNB.


Buy in-game items with one sentence.

Drives the cross.shop game web-shop platform and its per-game subdomains rohan2.cross.shop, seal-m.cross.shop, rom.cross.shop. Browse catalogs, log in with a Game UUID, and pay on-chain in CROSS or BNB.


1. Install

The block below is a natural-language prompt to paste into your AI agent — not a terminal command.

Clone https://github.com/to-nexus/skill-cross-shop into a temporary directory and run the install.sh script inside it to install the cross-shop skill into my environment. Tell me the result in one line when you're done.
🚧

Bash execution required.

Browser-only agents can't run the on-chain payment leg. See §2.

📘

Most subcommands need a one-time capture.

games runs end-to-end today. products / login / quote / purchase / orders / status short-circuit with phase_1_not_captured until you (or your agent) follow skills/cross-shop/references/cross-shop.md to populate references/games.json.

Install all CROSS skills at once

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). The on-chain payment leg uses viem and cannot run in those environments.


3. What you can do

Read

SubcommandWhat it does
🟢 gamesList supported game shops (rohan2, seal-m, rom).
🟢 productsBrowse a game's product catalog.
🟡 ordersRead your order history (auth required).
🟡 statusPoll a single order to terminal delivery state.
🟢 quoteQuote a purchase against a payment rail before signing.

Auth & write

SubcommandWhat it does
🟣 loginExchange a Game UUID for a session token (persisted at rest as sha256(uuid)).
🔴 purchaseExecute purchase end-to-end on --pay CROSS or --pay BNB.

Auth bands. 🟢 Read · 🟡 Read · auth — 🔴 Write · signs tx — 🟣 Write · off-chain auth.


4. Try it

💬

Any natural language works. Examples below are in English; phrase your intent in whichever language you prefer — the agent forwards your intent, not the wording.

List available games on cross.shop
Show me rohan2 products
Buy weekly costume from seal-m with BNB
Pay with CROSS for this ROM item
Show my cross.shop order history for rohan2
Poll order 7891 until it ships

5. Command reference

commandargsauthmutationdescription
gamesreadList supported games.
products<game>readCatalog for one game.
login<game> --uuid <UUID> [--persist]UUIDoff-chain writeExchange UUID for session.
quote<game> <productId> --pay <CROSS|BNB>sessionreadBack-end quote — no signing.
purchase<game> <productId> --pay <CROSS|BNB> [--confirm]PK + sessiontxFull purchase + on-chain pay.
orders<game> [--limit N]sessionreadYour order history.
status<game> <orderId> [--watch <sec>]sessionreadPoll a single order.

Exit codes: 0 ok · 1 runtime · 2 user error · 3 phase_1_not_captured.


6. Safety & credentials

🛑

This skill signs on-chain transactions.

RailWhat it does
Required credentialsPRIVATE_KEY (EOA) for purchase. Game UUID for login / authenticated reads. Both are treated as secrets.
Chain-id check--pay CROSS → chain 612055. --pay BNB → chain 56. Mismatch → abort.
MAX_PURCHASE_NOTIONALPer-purchase USD cap (default 100). Aborts above.
CONFIRM_THRESHOLDPurchases above this USD value (default 10) require explicit --confirm.
MIN_GAS_NATIVEPayment-chain native floor (default 0.001). Set 0 to skip.
RECEIPT_TIMEOUTSeconds to poll delivery after on-chain confirm (default 120).
Fresh-quote bindingRefuses to sign with a stale paymentTarget.
Phase-1 capture guardAborts with phase_1_not_captured instead of fabricating a fake call.
💡

Hosted-agent tip. Use a disposable wallet. Session tokens are written to ~/.claude/skills/cross-shop/.sessions/<game>.json at mode 0600 — readable only by your user.


7. Troubleshooting

phase_1_not_captured on every command except games.

Your agent hasn't filled references/games.json yet. Ask the agent: "Openskills/cross-shop/references/cross-shop.md and walk me through the Phase-1 capture for rohan2".

unknown_game

The slug isn't in the registry. Currently registered: rohan2, seal-m, rom.

unsupported_rail_v0_1 on --pay CARD.

Hosted-checkout / 3DS card payment is deferred to v0.2. For now, finish a card purchase in the browser.

Payment confirmed but delivery is still pending.

The skill returns {ok:true, deliveryStatus:"pending", txHash, orderId} with an explorer link. The back-end usually delivers within RECEIPT_TIMEOUT seconds; if not, re-poll with status <game> <orderId>.

The agent says awaiting_confirm.

You hit CONFIRM_THRESHOLD (default $10 USD). Re-issue with explicit confirmation.


© 2025 NEXUS Co., Ltd. All Rights Reserved.