{
  "schemaVersion": "1.0",
  "item": {
    "slug": "tator-trader",
    "name": "Tator Trader - AI Trading",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/azep-ninja/tator-trader",
    "canonicalUrl": "https://clawhub.ai/azep-ninja/tator-trader",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/tator-trader",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=tator-trader",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/chains.md",
      "references/REFERENCE.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "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."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "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."
        },
        {
          "label": "Upgrade existing",
          "body": "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."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/tator-trader"
    },
    "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."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/tator-trader",
    "agentPageUrl": "https://openagent3.xyz/skills/tator-trader/agent",
    "manifestUrl": "https://openagent3.xyz/skills/tator-trader/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/tator-trader/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "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."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "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."
      },
      {
        "label": "Upgrade existing",
        "body": "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."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Tator AI Trading API",
        "body": "Trade on 24 chains using natural language. Send a prompt like \"Buy 0.1 ETH worth of PEPE on Base\" — Tator returns UNSIGNED transactions for you to review, sign, and broadcast. $0.20 USDC per request via x402. Tator never touches your keys."
      },
      {
        "title": "Quick Reference",
        "body": "SituationActionUser wants to buy/sell/swap a tokenBuild prompt with amount + token + chain, call TatorUser wants to bridge tokensInclude source chain, destination chain, amount in promptUser wants to open a leveraged positionInclude leverage, direction, collateral amount, protocolUser gives a vague prompt (\"buy some crypto\")Ask for specifics: which token, how much, which chainResponse has type: \"transaction\"Verify each TX (check to, value, chainId), then sign and broadcast IN ORDERResponse has type: \"error\"Show error message to user, suggest fixesResponse has type: \"info\"Display the information to userMultiple transactions returnedExecute sequentially — wait for each to confirm before sending nextUnknown/new tokenUse contract address instead of name in promptUser hasn't scanned the token yetScan first with quickintel-scan skill ($0.03) before buying"
      },
      {
        "title": "Endpoint",
        "body": "POST https://x402.quickintel.io/v1/tator/prompt\n\n{\n  \"prompt\": \"Buy 0.1 ETH worth of PEPE on Base\",\n  \"walletAddress\": \"0xYourPublicWalletAddress\",\n  \"provider\": \"your-agent-name\"\n}\n\nFieldRequiredDescriptionpromptYesNatural language trading instructionwalletAddressYesYour PUBLIC wallet address (receives tokens, signs TX)providerYesYour agent/app identifierasyncNoReturns job ID to poll. Default: falsechainNoPreferred chain (e.g., \"base\", \"ethereum\")slippageNoSlippage tolerance %. Default: 1\n\nCost: $0.20 USDC (200000 atomic units) on any of 14 payment networks. Base recommended for lowest fees.\n\n⚠️ NEVER paste private keys or seed phrases into prompts. Tator only needs your PUBLIC wallet address. The walletAddress field is your public address — the one you'd share to receive tokens."
      },
      {
        "title": "Writing Good Prompts",
        "body": "Better prompts = better results. You pay $0.20 regardless of outcome.\n\nGoodBad\"Buy 0.1 ETH worth of PEPE on Base\"\"Buy some crypto\"\"Swap 100 USDC for ETH on Arbitrum\"\"Swap tokens\"\"Bridge 50 USDC from Base to Arbitrum\"\"Bridge my tokens\"\"Open 5x long on ETH with 100 USDC on Avantis\"\"Go long ETH\"\"Buy 0x1234...abcd on Base\" (contract address for obscure tokens)\"Get me that new meme coin\"\n\nTips: Always include chain. Specify amounts. Use contract addresses for obscure tokens. For bridging, include source AND destination chain."
      },
      {
        "title": "Capabilities",
        "body": "CategoryOperationsExampleTradingBuy, sell, swap\"Swap 100 USDC for ETH on Arbitrum\"TransfersSend, wrap, unwrap, burn\"Send 50 USDC to 0x1234...\"BridgingCross-chain via Relay, LiFi, GasZip, deBridge\"Bridge 100 USDC from Base to Arbitrum\"PerpsLong/short via Avantis (Base)\"Open 5x long on ETH with 100 USDC\"Prediction MarketsBet via Myriad\"Bet $10 on YES for 'Will ETH hit 5k?'\"Token LaunchClanker (Base, Ethereum, Arbitrum, Unichain), Flaunch (Base), Pump.fun (Solana)\"Launch MYTOKEN with symbol MTK on Clanker\"NamesBasenames, MegaETH, Somnia\"Register myname.base\"YieldAave, Morpho, Compound, Yearn\"Deposit 1000 USDC into Aave on Base\""
      },
      {
        "title": "Supported Chains (24)",
        "body": "ethereum, base, arbitrum, optimism, polygon, avalanche, bsc, linea, sonic, berachain, abstract, unichain, ink, soneium, ronin, worldchain, sei, hyperevm, katana, somnia, plasma, monad, megaeth, solana\n\nUse exact chain names as shown (e.g., \"base\" not \"Base\", \"bsc\" not \"binance\")."
      },
      {
        "title": "Transaction Response (Most Common)",
        "body": "{\n  \"type\": \"transaction\",\n  \"transactions\": [\n    {\n      \"to\": \"0xContractAddress\",\n      \"data\": \"0xCalldata...\",\n      \"value\": \"100000000000000000\",\n      \"chainId\": 8453,\n      \"description\": \"Buy PEPE with 0.1 ETH on Base\"\n    }\n  ],\n  \"message\": \"Transaction ready. Sign and broadcast to complete.\"\n}\n\nBefore signing every transaction, verify:\n\nto address — Should be a known DEX router, bridge contract, or the address YOU specified\nvalue field — Should match the ETH/native amount from your prompt (for ERC-20 swaps this is usually \"0\")\nchainId — Should match the chain you requested\ndescription — Should align with your original prompt\nFor approvals (0x095ea7b3 selector) — Spender should be a known protocol contract\n\nIf anything looks wrong, do not sign. Ask Tator again with a more specific prompt or verify the contract on a block explorer."
      },
      {
        "title": "Error Response",
        "body": "{\n  \"type\": \"error\",\n  \"message\": \"Insufficient balance. You have 0.05 ETH but need 0.1 ETH.\",\n  \"code\": \"INSUFFICIENT_BALANCE\"\n}\n\nCodeFixINSUFFICIENT_BALANCECheck token balance before callingUNSUPPORTED_CHAINUse a supported chain from the listTOKEN_NOT_FOUNDUse contract address instead of nameINVALID_PROMPTBe more specificSLIPPAGE_TOO_HIGHReduce trade size or increase slippage tolerance"
      },
      {
        "title": "Info Response",
        "body": "Returned for information queries (prices, balances). Display the message to the user."
      },
      {
        "title": "Wallet Integration",
        "body": "⚠️ Wallet Security: Tator does NOT require your private key. The x402 payment uses YOUR agent's existing wallet. Use a managed wallet service to avoid raw key exposure entirely.\n\nYour setupUse thisKey exposureUsing Sponge WalletPattern A below (recommended)✅ No raw keysUsing AgentWallet (frames.ag)Pattern B below✅ No raw keysUsing Lobster.cash / CrossmintSee references/REFERENCE.md✅ No raw keysUsing Vincent WalletSee references/REFERENCE.md✅ No raw keysNeed programmatic signing (viem, ethers, @x402/fetch, Solana)See references/REFERENCE.md⚠️ Advanced — read security notesNot sure / no walletStart with Pattern A (Sponge)✅ No raw keys"
      },
      {
        "title": "Pattern A: Sponge Wallet (Recommended — No Raw Keys)",
        "body": "curl -sS -X POST \"https://api.wallet.paysponge.com/api/x402/fetch\" \\\n  -H \"Authorization: Bearer $SPONGE_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"url\": \"https://x402.quickintel.io/v1/tator/prompt\",\n    \"method\": \"POST\",\n    \"body\": {\n      \"prompt\": \"Buy 0.1 ETH worth of PEPE on Base\",\n      \"walletAddress\": \"0xYourSpongeWalletAddress\",\n      \"provider\": \"sponge-agent\"\n    },\n    \"preferred_chain\": \"base\"\n  }'\n\nSponge handles the 402 payment flow automatically. You still verify and sign the returned trade transactions. Requires: SPONGE_API_KEY env var."
      },
      {
        "title": "Pattern B: AgentWallet (No Raw Keys)",
        "body": "const response = await fetch('https://frames.ag/api/wallets/{username}/actions/x402/fetch', {\n  method: 'POST',\n  headers: {\n    'Authorization': `Bearer ${process.env.AGENTWALLET_API_TOKEN}`,\n    'Content-Type': 'application/json'\n  },\n  body: JSON.stringify({\n    url: 'https://x402.quickintel.io/v1/tator/prompt',\n    method: 'POST',\n    body: {\n      prompt: 'Swap 100 USDC for ETH on Base',\n      walletAddress: agentWalletAddress,\n      provider: 'my-agent'\n    }\n  })\n});\nconst result = await response.json();\n\n// Verify and broadcast via AgentWallet\nif (result.type === 'transaction') {\n  for (const tx of result.transactions) {\n    // VERIFY before signing — check to, value, chainId, description\n    const broadcast = await fetch(\n      'https://frames.ag/api/wallets/{username}/actions/send-transaction',\n      {\n        method: 'POST',\n        headers: {\n          'Authorization': `Bearer ${process.env.AGENTWALLET_API_TOKEN}`,\n          'Content-Type': 'application/json'\n        },\n        body: JSON.stringify({\n          chainId: tx.chainId, to: tx.to, data: tx.data, value: tx.value\n        })\n      }\n    );\n    console.log(`TX sent: ${(await broadcast.json()).hash}`);\n  }\n}\n\nFor programmatic signing patterns (@x402/fetch, viem, ethers.js, Solana, Vincent), see references/REFERENCE.md. These require a dedicated hot wallet with minimal funds — never use your main wallet."
      },
      {
        "title": "Async Mode",
        "body": "For long-running operations, add \"async\": true to get a job ID:\n\n{ \"type\": \"pending\", \"jobId\": \"job_abc123\", \"message\": \"Poll for result.\" }\n\nPoll (FREE — no payment): GET https://x402.quickintel.io/v1/tator/jobs/job_abc123"
      },
      {
        "title": "Scan Before You Buy",
        "body": "Always scan unknown tokens before trading. Use the quickintel-scan skill ($0.03) to check for honeypots, scams, and rug pull risks:\n\n// 1. Scan token ($0.03)\nconst scan = await scanToken(chain, tokenAddress);\nif (scan.tokenDynamicDetails.is_Honeypot) throw new Error('HONEYPOT');\nif (scan.quickiAudit.has_Scams) throw new Error('SCAM');\n\n// 2. Only then trade ($0.20)\nconst trade = await callTator(`Buy 0.1 ETH worth of ${tokenAddress} on ${chain}`, wallet);\n\nTotal cost: $0.23 for a scanned, verified trade. See references/REFERENCE.md for the complete scan-then-buy example."
      },
      {
        "title": "Security Model",
        "body": "YOUR SIDE                          TATOR'S SIDE\n─────────────                      ─────────────\n• Private keys (never shared)      • Interprets your prompt\n• Transaction review (before sign) • Constructs unsigned calldata\n• Signing decision (your wallet)   • Returns TXs for your review\n• Broadcasting (you submit)        • Charges $0.20 via x402\n\nTator NEVER receives your private key.\nTator CANNOT execute without your signature.\nThe worst Tator can do is return a bad transaction.\nThe worst YOU can do is sign it without checking."
      },
      {
        "title": "Payment Networks (14)",
        "body": "Pay on any of these networks: Base (recommended), Ethereum, Arbitrum, Optimism, Polygon, Avalanche, Unichain, Linea, Sonic, HyperEVM, Ink, Monad, MegaETH (USDM), Solana.\n\nSee references/REFERENCE.md for full USDC/USDM addresses per chain."
      },
      {
        "title": "Error Handling",
        "body": "ErrorCauseFix402 Payment RequiredNo payment headerEnsure wallet configured with $0.20+ USDC402 Signature verification failedBad payload structureCheck references/REFERENCE.md common mistakesINSUFFICIENT_BALANCECan't afford tradeCheck balance firstTOKEN_NOT_FOUNDUnknown tokenUse contract address"
      },
      {
        "title": "Important Notes",
        "body": "Payment charged regardless of outcome. Use payment-identifier extension for safe retries (see references/REFERENCE.md).\nMulti-TX requires sequential execution. Approvals must confirm before swaps.\nBridge times vary. 30 seconds to 30 minutes depending on protocol.\nPerps have liquidation risk. Leverage trading can lose your collateral.\nScan results are point-in-time. Re-scan periodically for held tokens."
      },
      {
        "title": "Discovery Endpoint",
        "body": "Query accepted payments and schemas: GET https://x402.quickintel.io/accepted"
      },
      {
        "title": "Cross-Reference",
        "body": "Token security scanning → quickintel-scan skill ($0.03/scan)\nDeep x402 implementation, all wallet patterns, transaction verification → references/REFERENCE.md\nChain details, RPCs, block explorers → references/chains.md"
      },
      {
        "title": "About",
        "body": "Tator's endpoint (x402.quickintel.io) is operated by Quick Intel LLC, a registered US-based cryptocurrency security company. Over 50 million token scans processed. APIs power DexTools, DexScreener, and Tator Trader. Operational since April 2023.\n\nTator Docs: https://docs.quickintel.io/tator\nx402 Protocol: https://www.x402.org\nSupport: https://t.me/tatortrader"
      }
    ],
    "body": "Tator AI Trading API\n\nTrade on 24 chains using natural language. Send a prompt like \"Buy 0.1 ETH worth of PEPE on Base\" — Tator returns UNSIGNED transactions for you to review, sign, and broadcast. $0.20 USDC per request via x402. Tator never touches your keys.\n\nQuick Reference\nSituation\tAction\nUser wants to buy/sell/swap a token\tBuild prompt with amount + token + chain, call Tator\nUser wants to bridge tokens\tInclude source chain, destination chain, amount in prompt\nUser wants to open a leveraged position\tInclude leverage, direction, collateral amount, protocol\nUser gives a vague prompt (\"buy some crypto\")\tAsk for specifics: which token, how much, which chain\nResponse has type: \"transaction\"\tVerify each TX (check to, value, chainId), then sign and broadcast IN ORDER\nResponse has type: \"error\"\tShow error message to user, suggest fixes\nResponse has type: \"info\"\tDisplay the information to user\nMultiple transactions returned\tExecute sequentially — wait for each to confirm before sending next\nUnknown/new token\tUse contract address instead of name in prompt\nUser hasn't scanned the token yet\tScan first with quickintel-scan skill ($0.03) before buying\nEndpoint\n\nPOST https://x402.quickintel.io/v1/tator/prompt\n\n{\n  \"prompt\": \"Buy 0.1 ETH worth of PEPE on Base\",\n  \"walletAddress\": \"0xYourPublicWalletAddress\",\n  \"provider\": \"your-agent-name\"\n}\n\nField\tRequired\tDescription\nprompt\tYes\tNatural language trading instruction\nwalletAddress\tYes\tYour PUBLIC wallet address (receives tokens, signs TX)\nprovider\tYes\tYour agent/app identifier\nasync\tNo\tReturns job ID to poll. Default: false\nchain\tNo\tPreferred chain (e.g., \"base\", \"ethereum\")\nslippage\tNo\tSlippage tolerance %. Default: 1\n\nCost: $0.20 USDC (200000 atomic units) on any of 14 payment networks. Base recommended for lowest fees.\n\n⚠️ NEVER paste private keys or seed phrases into prompts. Tator only needs your PUBLIC wallet address. The walletAddress field is your public address — the one you'd share to receive tokens.\n\nWriting Good Prompts\n\nBetter prompts = better results. You pay $0.20 regardless of outcome.\n\nGood\tBad\n\"Buy 0.1 ETH worth of PEPE on Base\"\t\"Buy some crypto\"\n\"Swap 100 USDC for ETH on Arbitrum\"\t\"Swap tokens\"\n\"Bridge 50 USDC from Base to Arbitrum\"\t\"Bridge my tokens\"\n\"Open 5x long on ETH with 100 USDC on Avantis\"\t\"Go long ETH\"\n\"Buy 0x1234...abcd on Base\" (contract address for obscure tokens)\t\"Get me that new meme coin\"\n\nTips: Always include chain. Specify amounts. Use contract addresses for obscure tokens. For bridging, include source AND destination chain.\n\nCapabilities\nCategory\tOperations\tExample\nTrading\tBuy, sell, swap\t\"Swap 100 USDC for ETH on Arbitrum\"\nTransfers\tSend, wrap, unwrap, burn\t\"Send 50 USDC to 0x1234...\"\nBridging\tCross-chain via Relay, LiFi, GasZip, deBridge\t\"Bridge 100 USDC from Base to Arbitrum\"\nPerps\tLong/short via Avantis (Base)\t\"Open 5x long on ETH with 100 USDC\"\nPrediction Markets\tBet via Myriad\t\"Bet $10 on YES for 'Will ETH hit 5k?'\"\nToken Launch\tClanker (Base, Ethereum, Arbitrum, Unichain), Flaunch (Base), Pump.fun (Solana)\t\"Launch MYTOKEN with symbol MTK on Clanker\"\nNames\tBasenames, MegaETH, Somnia\t\"Register myname.base\"\nYield\tAave, Morpho, Compound, Yearn\t\"Deposit 1000 USDC into Aave on Base\"\nSupported Chains (24)\n\nethereum, base, arbitrum, optimism, polygon, avalanche, bsc, linea, sonic, berachain, abstract, unichain, ink, soneium, ronin, worldchain, sei, hyperevm, katana, somnia, plasma, monad, megaeth, solana\n\nUse exact chain names as shown (e.g., \"base\" not \"Base\", \"bsc\" not \"binance\").\n\nHandling Responses\nTransaction Response (Most Common)\n{\n  \"type\": \"transaction\",\n  \"transactions\": [\n    {\n      \"to\": \"0xContractAddress\",\n      \"data\": \"0xCalldata...\",\n      \"value\": \"100000000000000000\",\n      \"chainId\": 8453,\n      \"description\": \"Buy PEPE with 0.1 ETH on Base\"\n    }\n  ],\n  \"message\": \"Transaction ready. Sign and broadcast to complete.\"\n}\n\n\nBefore signing every transaction, verify:\n\nto address — Should be a known DEX router, bridge contract, or the address YOU specified\nvalue field — Should match the ETH/native amount from your prompt (for ERC-20 swaps this is usually \"0\")\nchainId — Should match the chain you requested\ndescription — Should align with your original prompt\nFor approvals (0x095ea7b3 selector) — Spender should be a known protocol contract\n\nIf anything looks wrong, do not sign. Ask Tator again with a more specific prompt or verify the contract on a block explorer.\n\nError Response\n{\n  \"type\": \"error\",\n  \"message\": \"Insufficient balance. You have 0.05 ETH but need 0.1 ETH.\",\n  \"code\": \"INSUFFICIENT_BALANCE\"\n}\n\nCode\tFix\nINSUFFICIENT_BALANCE\tCheck token balance before calling\nUNSUPPORTED_CHAIN\tUse a supported chain from the list\nTOKEN_NOT_FOUND\tUse contract address instead of name\nINVALID_PROMPT\tBe more specific\nSLIPPAGE_TOO_HIGH\tReduce trade size or increase slippage tolerance\nInfo Response\n\nReturned for information queries (prices, balances). Display the message to the user.\n\nWallet Integration\n\n⚠️ Wallet Security: Tator does NOT require your private key. The x402 payment uses YOUR agent's existing wallet. Use a managed wallet service to avoid raw key exposure entirely.\n\nYour setup\tUse this\tKey exposure\nUsing Sponge Wallet\tPattern A below (recommended)\t✅ No raw keys\nUsing AgentWallet (frames.ag)\tPattern B below\t✅ No raw keys\nUsing Lobster.cash / Crossmint\tSee references/REFERENCE.md\t✅ No raw keys\nUsing Vincent Wallet\tSee references/REFERENCE.md\t✅ No raw keys\nNeed programmatic signing (viem, ethers, @x402/fetch, Solana)\tSee references/REFERENCE.md\t⚠️ Advanced — read security notes\nNot sure / no wallet\tStart with Pattern A (Sponge)\t✅ No raw keys\nPattern A: Sponge Wallet (Recommended — No Raw Keys)\ncurl -sS -X POST \"https://api.wallet.paysponge.com/api/x402/fetch\" \\\n  -H \"Authorization: Bearer $SPONGE_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"url\": \"https://x402.quickintel.io/v1/tator/prompt\",\n    \"method\": \"POST\",\n    \"body\": {\n      \"prompt\": \"Buy 0.1 ETH worth of PEPE on Base\",\n      \"walletAddress\": \"0xYourSpongeWalletAddress\",\n      \"provider\": \"sponge-agent\"\n    },\n    \"preferred_chain\": \"base\"\n  }'\n\n\nSponge handles the 402 payment flow automatically. You still verify and sign the returned trade transactions. Requires: SPONGE_API_KEY env var.\n\nPattern B: AgentWallet (No Raw Keys)\nconst response = await fetch('https://frames.ag/api/wallets/{username}/actions/x402/fetch', {\n  method: 'POST',\n  headers: {\n    'Authorization': `Bearer ${process.env.AGENTWALLET_API_TOKEN}`,\n    'Content-Type': 'application/json'\n  },\n  body: JSON.stringify({\n    url: 'https://x402.quickintel.io/v1/tator/prompt',\n    method: 'POST',\n    body: {\n      prompt: 'Swap 100 USDC for ETH on Base',\n      walletAddress: agentWalletAddress,\n      provider: 'my-agent'\n    }\n  })\n});\nconst result = await response.json();\n\n// Verify and broadcast via AgentWallet\nif (result.type === 'transaction') {\n  for (const tx of result.transactions) {\n    // VERIFY before signing — check to, value, chainId, description\n    const broadcast = await fetch(\n      'https://frames.ag/api/wallets/{username}/actions/send-transaction',\n      {\n        method: 'POST',\n        headers: {\n          'Authorization': `Bearer ${process.env.AGENTWALLET_API_TOKEN}`,\n          'Content-Type': 'application/json'\n        },\n        body: JSON.stringify({\n          chainId: tx.chainId, to: tx.to, data: tx.data, value: tx.value\n        })\n      }\n    );\n    console.log(`TX sent: ${(await broadcast.json()).hash}`);\n  }\n}\n\n\nFor programmatic signing patterns (@x402/fetch, viem, ethers.js, Solana, Vincent), see references/REFERENCE.md. These require a dedicated hot wallet with minimal funds — never use your main wallet.\n\nAsync Mode\n\nFor long-running operations, add \"async\": true to get a job ID:\n\n{ \"type\": \"pending\", \"jobId\": \"job_abc123\", \"message\": \"Poll for result.\" }\n\n\nPoll (FREE — no payment): GET https://x402.quickintel.io/v1/tator/jobs/job_abc123\n\nScan Before You Buy\n\nAlways scan unknown tokens before trading. Use the quickintel-scan skill ($0.03) to check for honeypots, scams, and rug pull risks:\n\n// 1. Scan token ($0.03)\nconst scan = await scanToken(chain, tokenAddress);\nif (scan.tokenDynamicDetails.is_Honeypot) throw new Error('HONEYPOT');\nif (scan.quickiAudit.has_Scams) throw new Error('SCAM');\n\n// 2. Only then trade ($0.20)\nconst trade = await callTator(`Buy 0.1 ETH worth of ${tokenAddress} on ${chain}`, wallet);\n\n\nTotal cost: $0.23 for a scanned, verified trade. See references/REFERENCE.md for the complete scan-then-buy example.\n\nSecurity Model\nYOUR SIDE                          TATOR'S SIDE\n─────────────                      ─────────────\n• Private keys (never shared)      • Interprets your prompt\n• Transaction review (before sign) • Constructs unsigned calldata\n• Signing decision (your wallet)   • Returns TXs for your review\n• Broadcasting (you submit)        • Charges $0.20 via x402\n\nTator NEVER receives your private key.\nTator CANNOT execute without your signature.\nThe worst Tator can do is return a bad transaction.\nThe worst YOU can do is sign it without checking.\n\nPayment Networks (14)\n\nPay on any of these networks: Base (recommended), Ethereum, Arbitrum, Optimism, Polygon, Avalanche, Unichain, Linea, Sonic, HyperEVM, Ink, Monad, MegaETH (USDM), Solana.\n\nSee references/REFERENCE.md for full USDC/USDM addresses per chain.\n\nError Handling\nError\tCause\tFix\n402 Payment Required\tNo payment header\tEnsure wallet configured with $0.20+ USDC\n402 Signature verification failed\tBad payload structure\tCheck references/REFERENCE.md common mistakes\nINSUFFICIENT_BALANCE\tCan't afford trade\tCheck balance first\nTOKEN_NOT_FOUND\tUnknown token\tUse contract address\nImportant Notes\nPayment charged regardless of outcome. Use payment-identifier extension for safe retries (see references/REFERENCE.md).\nMulti-TX requires sequential execution. Approvals must confirm before swaps.\nBridge times vary. 30 seconds to 30 minutes depending on protocol.\nPerps have liquidation risk. Leverage trading can lose your collateral.\nScan results are point-in-time. Re-scan periodically for held tokens.\nDiscovery Endpoint\n\nQuery accepted payments and schemas: GET https://x402.quickintel.io/accepted\n\nCross-Reference\nToken security scanning → quickintel-scan skill ($0.03/scan)\nDeep x402 implementation, all wallet patterns, transaction verification → references/REFERENCE.md\nChain details, RPCs, block explorers → references/chains.md\nAbout\n\nTator's endpoint (x402.quickintel.io) is operated by Quick Intel LLC, a registered US-based cryptocurrency security company. Over 50 million token scans processed. APIs power DexTools, DexScreener, and Tator Trader. Operational since April 2023.\n\nTator Docs: https://docs.quickintel.io/tator\nx402 Protocol: https://www.x402.org\nSupport: https://t.me/tatortrader"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/azep-ninja/tator-trader",
    "publisherUrl": "https://clawhub.ai/azep-ninja/tator-trader",
    "owner": "azep-ninja",
    "version": "1.0.6",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/tator-trader",
    "downloadUrl": "https://openagent3.xyz/downloads/tator-trader",
    "agentUrl": "https://openagent3.xyz/skills/tator-trader/agent",
    "manifestUrl": "https://openagent3.xyz/skills/tator-trader/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/tator-trader/agent.md"
  }
}