{
  "schemaVersion": "1.0",
  "item": {
    "slug": "fluxa-agent-wallet",
    "name": "FluxA-agent-wallet",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/cpppppp7/fluxa-agent-wallet",
    "canonicalUrl": "https://clawhub.ai/cpppppp7/fluxa-agent-wallet",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/fluxa-agent-wallet",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=fluxa-agent-wallet",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "PAYMENT-LINK.md",
      "SKILL.md",
      "X402-PAYMENT.md",
      "PAYOUT.md",
      "scripts/fluxa-cli.bundle.js"
    ],
    "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-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-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/fluxa-agent-wallet"
    },
    "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/fluxa-agent-wallet",
    "agentPageUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet/agent",
    "manifestUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet/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": "FluxA Agent Wallet",
        "body": "FluxA Agent Wallet lets AI agents perform onchain financial operations — payments, payouts, and payment links — without managing private keys. All operations use the CLI (scripts/fluxa-cli.bundle.js)."
      },
      {
        "title": "Setup",
        "body": "The CLI bundle is located at scripts/fluxa-cli.bundle.js within this skill directory. It requires Node.js v18+.\n\nnode scripts/fluxa-cli.bundle.js <command> [options]\n\nAll commands output JSON to stdout:\n\n{ \"success\": true, \"data\": { ... } }\n\nOr on error:\n\n{ \"success\": false, \"error\": \"Error message\" }\n\nExit code 0 = success, 1 = failure."
      },
      {
        "title": "Capabilities",
        "body": "CapabilityWhat it doesWhen to usex402 Payment (v3)Pay for APIs using the x402 protocol with intent mandatesAgent hits HTTP 402, needs to pay for API accessPayoutSend USDC to any wallet addressAgent needs to transfer funds to a recipientPayment LinkCreate shareable URLs to receive paymentsAgent needs to charge users, create invoices, sell content"
      },
      {
        "title": "Prerequisites — Register Agent ID",
        "body": "Before any operation, the agent must have an Agent ID. Register once:\n\nnode scripts/fluxa-cli.bundle.js init \\\n  --email \"agent@example.com\" \\\n  --name \"My AI Agent\" \\\n  --client \"Agent v1.0\"\n\nOr pre-configure via environment variables:\n\nexport AGENT_ID=\"ag_xxxxxxxxxxxx\"\nexport AGENT_TOKEN=\"tok_xxxxxxxxxxxx\"\nexport AGENT_JWT=\"eyJhbGciOiJ...\"\n\nVerify status:\n\nnode scripts/fluxa-cli.bundle.js status\n\nThe CLI automatically refreshes expired JWTs."
      },
      {
        "title": "Opening Authorization URLs (UX Pattern)",
        "body": "Many operations require user authorization via a URL (mandate signing, payout approval, agent registration). When you need the user to open a URL:\n\nAlways ask the user first using AskUserQuestion tool with options:\n\n\"Yes, open the link\"\n\"No, show me the URL\"\n\n\n\nIf user chooses YES: Use the open command to open the URL in their default browser:\nopen \"<URL>\"\n\n\n\nIf user chooses NO: Display the URL and ask how they'd like to proceed.\n\nExample interaction flow:\n\nAgent: I need to open the authorization URL to sign the mandate.\n       [Yes, open the link] [No, show me the URL]\n\nUser: [Yes, open the link]\n\nAgent: *runs* open \"https://agentwallet.fluxapay.xyz/onboard/intent?oid=...\"\nAgent: I've opened the authorization page in your browser. Please sign the mandate, then let me know when you're done.\n\nThis pattern applies to:\n\nMandate authorization (authorizationUrl from mandate-create)\nPayout approval (approvalUrl from payout)\nAgent registration (if manual registration is needed)"
      },
      {
        "title": "Quick Decision Guide",
        "body": "I want to...DocumentPay for an API that returned HTTP 402X402-PAYMENT.mdPay to a payment link (agent-to-agent)PAYMENT-LINK.md — \"Paying TO a Payment Link\" sectionSend USDC to a wallet addressPAYOUT.mdCreate a payment link to receive paymentsPAYMENT-LINK.md — \"Create Payment Link\" section"
      },
      {
        "title": "Common Flow: Paying to a Payment Link",
        "body": "This is a 6-step process using CLI:\n\n1. PAYLOAD=$(curl -s <payment_link_url>)                    → Get full 402 payload JSON\n2. mandate-create --desc \"...\" --amount <amount>            → Create mandate (BOTH flags required)\n3. User signs at authorizationUrl                           → Mandate becomes \"signed\"\n4. mandate-status --id <mandate_id>                         → Verify signed (use --id, NOT --mandate)\n5. x402-v3 --mandate <id> --payload \"$PAYLOAD\"              → Get xPaymentB64 (pass FULL 402 JSON)\n6. curl -H \"X-Payment: <token>\" <url>                       → Submit payment\n\nCritical: The --payload for x402-v3 must be the complete 402 response JSON including the accepts array, not just extracted fields.\n\nSee PAYMENT-LINK.md for the complete walkthrough with examples."
      },
      {
        "title": "Amount Format",
        "body": "All amounts are in smallest units (atomic units). For USDC (6 decimals):\n\nHuman-readableAtomic units0.01 USDC100000.10 USDC1000001.00 USDC100000010.00 USDC10000000"
      },
      {
        "title": "CLI Commands Quick Reference",
        "body": "CommandRequired FlagsDescriptionstatus(none)Check agent configurationinit--email, --nameRegister agent IDmandate-create--desc, --amountCreate an intent mandatemandate-status--idQuery mandate status (NOT --mandate)x402-v3--mandate, --payloadExecute x402 v3 paymentpayout--to, --amount, --idCreate a payoutpayout-status--idQuery payout statuspaymentlink-create--amountCreate a payment linkpaymentlink-list(none)List payment linkspaymentlink-get--idGet payment link detailspaymentlink-update--idUpdate a payment linkpaymentlink-delete--idDelete a payment linkpaymentlink-payments--idGet payment records for a link\n\nCommon Mistakes to Avoid:\n\nWrongCorrectmandate-create --amount 100000mandate-create --desc \"...\" --amount 100000mandate-status --mandate mand_xxxmandate-status --id mand_xxxx402-v3 --payload '{\"maxAmountRequired\":\"100000\"}'x402-v3 --payload '<full 402 response with accepts array>'"
      },
      {
        "title": "Environment Variables",
        "body": "VariableDescriptionAGENT_IDPre-configured agent IDAGENT_TOKENPre-configured agent tokenAGENT_JWTPre-configured agent JWTAGENT_EMAILEmail for auto-registrationAGENT_NAMEAgent name for auto-registrationCLIENT_INFOClient info for auto-registrationFLUXA_DATA_DIRCustom data directory (default: ~/.fluxa-ai-wallet-mcp)WALLET_APIWallet API base URL (default: https://walletapi.fluxapay.xyz)AGENT_ID_APIAgent ID API base URL (default: https://agentid.fluxapay.xyz)"
      }
    ],
    "body": "FluxA Agent Wallet\n\nFluxA Agent Wallet lets AI agents perform onchain financial operations — payments, payouts, and payment links — without managing private keys. All operations use the CLI (scripts/fluxa-cli.bundle.js).\n\nSetup\n\nThe CLI bundle is located at scripts/fluxa-cli.bundle.js within this skill directory. It requires Node.js v18+.\n\nnode scripts/fluxa-cli.bundle.js <command> [options]\n\n\nAll commands output JSON to stdout:\n\n{ \"success\": true, \"data\": { ... } }\n\n\nOr on error:\n\n{ \"success\": false, \"error\": \"Error message\" }\n\n\nExit code 0 = success, 1 = failure.\n\nCapabilities\nCapability\tWhat it does\tWhen to use\nx402 Payment (v3)\tPay for APIs using the x402 protocol with intent mandates\tAgent hits HTTP 402, needs to pay for API access\nPayout\tSend USDC to any wallet address\tAgent needs to transfer funds to a recipient\nPayment Link\tCreate shareable URLs to receive payments\tAgent needs to charge users, create invoices, sell content\nPrerequisites — Register Agent ID\n\nBefore any operation, the agent must have an Agent ID. Register once:\n\nnode scripts/fluxa-cli.bundle.js init \\\n  --email \"agent@example.com\" \\\n  --name \"My AI Agent\" \\\n  --client \"Agent v1.0\"\n\n\nOr pre-configure via environment variables:\n\nexport AGENT_ID=\"ag_xxxxxxxxxxxx\"\nexport AGENT_TOKEN=\"tok_xxxxxxxxxxxx\"\nexport AGENT_JWT=\"eyJhbGciOiJ...\"\n\n\nVerify status:\n\nnode scripts/fluxa-cli.bundle.js status\n\n\nThe CLI automatically refreshes expired JWTs.\n\nOpening Authorization URLs (UX Pattern)\n\nMany operations require user authorization via a URL (mandate signing, payout approval, agent registration). When you need the user to open a URL:\n\nAlways ask the user first using AskUserQuestion tool with options:\n\n\"Yes, open the link\"\n\"No, show me the URL\"\n\nIf user chooses YES: Use the open command to open the URL in their default browser:\n\nopen \"<URL>\"\n\n\nIf user chooses NO: Display the URL and ask how they'd like to proceed.\n\nExample interaction flow:\n\nAgent: I need to open the authorization URL to sign the mandate.\n       [Yes, open the link] [No, show me the URL]\n\nUser: [Yes, open the link]\n\nAgent: *runs* open \"https://agentwallet.fluxapay.xyz/onboard/intent?oid=...\"\nAgent: I've opened the authorization page in your browser. Please sign the mandate, then let me know when you're done.\n\n\nThis pattern applies to:\n\nMandate authorization (authorizationUrl from mandate-create)\nPayout approval (approvalUrl from payout)\nAgent registration (if manual registration is needed)\nQuick Decision Guide\nI want to...\tDocument\nPay for an API that returned HTTP 402\tX402-PAYMENT.md\nPay to a payment link (agent-to-agent)\tPAYMENT-LINK.md — \"Paying TO a Payment Link\" section\nSend USDC to a wallet address\tPAYOUT.md\nCreate a payment link to receive payments\tPAYMENT-LINK.md — \"Create Payment Link\" section\nCommon Flow: Paying to a Payment Link\n\nThis is a 6-step process using CLI:\n\n1. PAYLOAD=$(curl -s <payment_link_url>)                    → Get full 402 payload JSON\n2. mandate-create --desc \"...\" --amount <amount>            → Create mandate (BOTH flags required)\n3. User signs at authorizationUrl                           → Mandate becomes \"signed\"\n4. mandate-status --id <mandate_id>                         → Verify signed (use --id, NOT --mandate)\n5. x402-v3 --mandate <id> --payload \"$PAYLOAD\"              → Get xPaymentB64 (pass FULL 402 JSON)\n6. curl -H \"X-Payment: <token>\" <url>                       → Submit payment\n\n\nCritical: The --payload for x402-v3 must be the complete 402 response JSON including the accepts array, not just extracted fields.\n\nSee PAYMENT-LINK.md for the complete walkthrough with examples.\n\nAmount Format\n\nAll amounts are in smallest units (atomic units). For USDC (6 decimals):\n\nHuman-readable\tAtomic units\n0.01 USDC\t10000\n0.10 USDC\t100000\n1.00 USDC\t1000000\n10.00 USDC\t10000000\nCLI Commands Quick Reference\nCommand\tRequired Flags\tDescription\nstatus\t(none)\tCheck agent configuration\ninit\t--email, --name\tRegister agent ID\nmandate-create\t--desc, --amount\tCreate an intent mandate\nmandate-status\t--id\tQuery mandate status (NOT --mandate)\nx402-v3\t--mandate, --payload\tExecute x402 v3 payment\npayout\t--to, --amount, --id\tCreate a payout\npayout-status\t--id\tQuery payout status\npaymentlink-create\t--amount\tCreate a payment link\npaymentlink-list\t(none)\tList payment links\npaymentlink-get\t--id\tGet payment link details\npaymentlink-update\t--id\tUpdate a payment link\npaymentlink-delete\t--id\tDelete a payment link\npaymentlink-payments\t--id\tGet payment records for a link\n\nCommon Mistakes to Avoid:\n\nWrong\tCorrect\nmandate-create --amount 100000\tmandate-create --desc \"...\" --amount 100000\nmandate-status --mandate mand_xxx\tmandate-status --id mand_xxx\nx402-v3 --payload '{\"maxAmountRequired\":\"100000\"}'\tx402-v3 --payload '<full 402 response with accepts array>'\nEnvironment Variables\nVariable\tDescription\nAGENT_ID\tPre-configured agent ID\nAGENT_TOKEN\tPre-configured agent token\nAGENT_JWT\tPre-configured agent JWT\nAGENT_EMAIL\tEmail for auto-registration\nAGENT_NAME\tAgent name for auto-registration\nCLIENT_INFO\tClient info for auto-registration\nFLUXA_DATA_DIR\tCustom data directory (default: ~/.fluxa-ai-wallet-mcp)\nWALLET_API\tWallet API base URL (default: https://walletapi.fluxapay.xyz)\nAGENT_ID_API\tAgent ID API base URL (default: https://agentid.fluxapay.xyz)"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/cpppppp7/fluxa-agent-wallet",
    "publisherUrl": "https://clawhub.ai/cpppppp7/fluxa-agent-wallet",
    "owner": "cpppppp7",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet",
    "downloadUrl": "https://openagent3.xyz/downloads/fluxa-agent-wallet",
    "agentUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet/agent",
    "manifestUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/fluxa-agent-wallet/agent.md"
  }
}