skills/t2000-receive/SKILL.md
Generate a payment request for the t2000 Agent Wallet — print the wallet address, an ANSI QR code, and (via MCP) a Payment Kit URI (sui:pay?…). Use when asked to receive a payment, share a wallet address, create a payment link, or set up a fund-me link.
npx skillsauth add mission69b/t2000-skills t2000-receiveInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Surface the wallet address (and optionally a Payment Kit URI with a pre-filled amount + memo) so anyone with a Sui wallet can send tokens to the Agent Wallet. Two surfaces:
t2 receive) — prints the wallet address + an ANSI QR code in the terminal. Minimal; no amount or memo.t2000_receive) — returns a JSON payload with the address, an optional Payment Kit URI (sui:pay?…), a nonce, plus an optional amount / currency / memo / label. Use this when the LLM is building a payment-request flow.t2 receive is a pure read with no authentication step.t2 receive # address + ANSI QR + share line
t2 receive --qr-only # just the QR (e.g. for embedding in a screenshot)
t2 receive --key <path> # custom wallet path
t2 receive --json # { address, qrEncodedFor }
CLI output (default):
Address 0x55b223b0...0dd1b6
Scan to send tokens to this wallet:
█▀▀▀▀▀█ ▄ ▀▄ █ ▄▀ ▄ █▀▀▀▀▀█
█ ███ █ █ ▀ █ ▄▄ ▀▀ █ ███ █
█ ▀▀▀ █ ▀▄▀▄█▀ ▀▄ ▀▄ █ ▀▀▀ █
▀▀▀▀▀▀▀ ▀ █▀▀ █ ▀ ▀ ▀▀▀▀▀▀▀▀▀
... (truncated)
Or share `0x55b223b0...0dd1b6` directly.
The CLI prints to ANSI — it will look right in any terminal but won't render as image data in MCP responses. Use the MCP tool for a structured JSON response.
t2000_receive)// Request
{
"amount": 10, // optional — pre-fills the sender's tx amount
"currency": "USDC", // optional — default USDC, also accepts USDsui / SUI
"memo": "Coffee on me", // optional — encoded into the Payment Kit URI
"label": "Coffee fund" // optional — human-readable label for the URI
}
// Response
{
"address": "0x55b223b0...0dd1b6",
"uri": "sui:pay?recipient=0x55b223b0...&amount=10000000&coinType=0xdba34672...::usdc::USDC&nonce=abc-123&label=Coffee+fund&message=Coffee+on+me",
"nonce": "abc-123-uuid",
"amount": 10,
"currency": "USDC",
"memo": "Coffee on me",
"label": "Coffee fund"
}
The Payment Kit URI follows the Sui Payment Kit spec — every Sui wallet (Mysten, Phantom, Suiet, Slush, Sui Wallet Standard) can scan/parse it. If you omit amount, the URI is a "bring your own amount" link that the sender fills in.
| Args | URI shape |
|---|---|
| no amount, no memo, default currency | sui:0x<address> |
| no amount, custom currency or memo | sui:0x<address>?currency=USDsui&memo=… |
| with amount | sui:pay?recipient=0x<address>&amount=<raw>&coinType=<full-type>&nonce=<uuid>[&label=…][&message=…] |
The amount-bearing form uses raw on-chain units (USDC: × 10^6, SUI: × 10^9) so wallets don't have to do their own conversion. The nonce is a UUID v4 minted at request time; senders include it in the tx metadata so the receiving agent can correlate the inflow back to the request.
| Need | Use |
|---|---|
| "What's my wallet address?" | t2 receive (CLI) or t2000_address (MCP — address only, no QR) |
| "Show me the QR" | t2 receive (CLI prints ANSI QR) |
| "Generate a payment link for $10" | t2000_receive { amount: 10, currency: "USDC" } (MCP) |
| "Generate a 'tip jar' link" (no amount) | t2000_receive { memo: "Tip jar", label: "Tip funkii" } (MCP) |
0x2::balance::send_funds allowlist).t2 balance (CLI) or t2000_balance (MCP) to verify. Inflows show up within ~1 block (~500 ms).t2000-send skill.development
Swap tokens on Sui via Cetus Aggregator (20+ DEXs, best-route across SUI, USDC, USDsui, USDT, USDe, ETH, GOLD, NAVX, WAL, vSUI, and more). Use when asked to swap, trade, convert, exchange, or "turn X into Y". Do not use for sending — use the t2000-send skill for transfers.
tools
Set up a t2000 Agent Wallet end-to-end on the user's machine. Use when the user says "set up t2000", "install the wallet", "create my Agent Wallet", "connect t2000 to Claude / Cursor", or pastes a one-prompt install URL. Covers wallet creation, optional spending limits, and MCP wiring. Read this first when bootstrapping a new user; the other skills assume this has run.
development
Discover MPP services payable via `t2 pay`. Use when the user asks "what can I pay for?", "what AI models are available?", "show me the service catalog", "is there a weather API?", or any other discovery question. Pairs with the t2000-pay skill (discovery first, then pay).
data-ai
Rebalance the wallet to a target allocation by executing multiple swaps in one atomic Payment Intent. Use when asked to rebalance, adjust allocation, "shuffle my positions", or move from one set of holdings to another. Every leg prices against the same on-chain snapshot — no cross-leg slippage drift; user signs once.