{
  "schemaVersion": "1.0",
  "item": {
    "slug": "abstract-onboard",
    "name": "Abstract Onboard",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/Masoncags-tech/abstract-onboard",
    "canonicalUrl": "https://clawhub.ai/Masoncags-tech/abstract-onboard",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/abstract-onboard",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=abstract-onboard",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "package.json",
      "references/addresses.md",
      "references/agw.md",
      "references/dex.md",
      "references/hardhat.config.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-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.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/abstract-onboard"
    },
    "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/abstract-onboard",
    "agentPageUrl": "https://openagent3.xyz/skills/abstract-onboard/agent",
    "manifestUrl": "https://openagent3.xyz/skills/abstract-onboard/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/abstract-onboard/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": "Abstract Onboard",
        "body": "Everything an AI agent needs to operate on Abstract (ZK Stack L2)."
      },
      {
        "title": "🚀 New Agent? Start Here",
        "body": "# Check if you're ready to operate\nnode scripts/quick-start.js check <your-wallet-address>\n\n# Or get the full setup guide\nnode scripts/quick-start.js"
      },
      {
        "title": "Create Abstract Global Wallet (AGW)",
        "body": "AGW is a smart contract wallet that earns XP on Abstract. Essential for agents!\n\n⚠️ CRITICAL: Understand the 3 layers first:\n\nPrivate Key → EOA (signer) → AGW (smart contract wallet)\n\nThe correct funding flow:\n\n1. Fund EOA with small ETH (for gas)\n2. Create/deploy AGW (EOA pays gas for first tx)\n3. Fund AGW with your main balance\n4. Everything runs through AGW from now on\n\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/create-agw.js\n\nYour EOA becomes the signer, AGW is a separate smart contract address.\n\n⚠️ Version Warning: Different agw-client versions may compute different AGW addresses! Always pin your version. See references/agw.md for details."
      },
      {
        "title": "Check Balances",
        "body": "node scripts/check-balances.js <wallet> all"
      },
      {
        "title": "Bridge ETH to Abstract",
        "body": "export WALLET_PRIVATE_KEY=0x...\nnode scripts/relay-bridge.js --from base --amount 0.01"
      },
      {
        "title": "Deploy a Contract",
        "body": "export WALLET_PRIVATE_KEY=0x...\nnode scripts/deploy-abstract.js ./artifacts/MyContract.json \"constructor-arg\""
      },
      {
        "title": "Transfer Tokens",
        "body": "export WALLET_PRIVATE_KEY=0x...\nnode scripts/transfer.js --to 0x... --amount 0.01           # ETH\nnode scripts/transfer.js --to 0x... --amount 100 --token USDC  # Token"
      },
      {
        "title": "Swap Tokens",
        "body": "export WALLET_PRIVATE_KEY=0x...\nexport DEX_ROUTER=0x...  # Set DEX router address\nnode scripts/swap-tokens.js --from ETH --to USDC --amount 0.01"
      },
      {
        "title": "DEX Trading (Kona & Aborean)",
        "body": "Abstract has multiple DEXs. Use the protocol-specific scripts for best results:\n\n# Kona Finance (V2) - USDC → ETH\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/swap-kona.js\n\n# Aborean (Velodrome-style) - when router is available\nnode scripts/swap-aborean.js\n\n# Generic Uniswap V2\nnode scripts/swap-uniswap-v2.js\n\nSee references/dex.md for contract addresses and supported pools."
      },
      {
        "title": "Myriad Prediction Markets",
        "body": "Trade on Myriad Markets — the largest prediction market on Abstract (415K+ users, $100M+ volume).\n\n# List open markets\nnode scripts/myriad-trade.js list\n\n# Get market details\nnode scripts/myriad-trade.js info <marketId>\n\n# Buy shares (place a prediction)\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/myriad-buy-direct.js <marketId> <outcomeId> <amount>\n\n# Example: $1 USDC.e on \"Yes\" for market 765\nnode scripts/myriad-buy-direct.js 765 0 1\n\nSee references/myriad.md for contract addresses, ABI details, and token info."
      },
      {
        "title": "Call Any Contract",
        "body": "# Read\nnode scripts/call-contract.js --address 0x... --abi ./abi.json --function balanceOf --args 0x1234\n\n# Write\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/call-contract.js --address 0x... --abi ./abi.json --function transfer --args 0x1234,100 --write"
      },
      {
        "title": "Mint NFT",
        "body": "# Deploy SimpleNFT.sol first, then mint\nexport WALLET_PRIVATE_KEY=0x...\n\n# Mint to existing contract\nnode scripts/mint-nft.js --contract 0x... --image QmIPFShash --to 0xRecipient --name \"My NFT\"\n\nSee references/SimpleNFT.sol for a basic NFT contract template."
      },
      {
        "title": "USDC Operations",
        "body": "# Check USDC balance\nnode scripts/usdc-ops.js balance <wallet>\n\n# Transfer USDC\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/usdc-ops.js transfer <to> <amount>\n\n# Approve spender\nnode scripts/usdc-ops.js approve <spender> <amount>\n\n# Check allowance\nnode scripts/usdc-ops.js allowance <owner> <spender>"
      },
      {
        "title": "Estimate Gas",
        "body": "# Get current gas prices\nnode scripts/estimate-gas.js\n\n# Estimate transfer cost\nnode scripts/estimate-gas.js transfer <to> <amount>\n\n# Estimate deployment cost\nnode scripts/estimate-gas.js deploy <bytecodeSize>"
      },
      {
        "title": "Watch Events",
        "body": "# Watch new blocks\nnode scripts/watch-events.js blocks\n\n# Watch ETH transfers to/from wallet\nnode scripts/watch-events.js transfers <wallet>\n\n# Watch ERC20 transfers\nnode scripts/watch-events.js erc20 <token> <wallet>\n\n# Watch contract events\nnode scripts/watch-events.js contract <address>"
      },
      {
        "title": "Testnet Setup",
        "body": "# Get faucet instructions\nnode scripts/testnet-setup.js faucet\n\n# Check testnet balance\nnode scripts/testnet-setup.js check <wallet>\n\n# Verify testnet setup\nnode scripts/testnet-setup.js verify <wallet>"
      },
      {
        "title": "Key Information",
        "body": "ItemValueChain ID2741RPChttps://api.mainnet.abs.xyzExplorerhttps://abscan.orgBridgehttps://relay.link/bridge/abstractUSDC0x84A71ccD554Cc1b02749b35d22F684CC8ec987e1WETH0x3439153EB7AF838Ad19d56E1571FBD09333C2809Kona Router0x441E0627Db5173Da098De86b734d136b27925250Uniswap V2 Router0xad1eCa41E6F772bE3cb5A48A6141f9bcc1AF9F7cMyriad PM Contract0x3e0F5F8F5Fb043aBFA475C0308417Bf72c463289Myriad PTS Token0x0b07cf011B6e2b7E0803b892d97f751659940F23Myriad APIhttps://api-v2.myriadprotocol.com"
      },
      {
        "title": "Scripts",
        "body": "ScriptPurposequick-start.jsSTART HERE - Setup guide & health checkcreate-agw.jsCreate Abstract Global Wallet (earns XP!)check-balances.jsCheck ETH and token balancesrelay-bridge.jsBridge ETH from other chainsbridge-usdc-relay.jsBridge USDC via Relay APIdeploy-abstract.jsDeploy contracts to Abstract (with verification!)verify-contract.jsVerify contract has bytecode (SAFETY CHECK)transfer.jsSend ETH or tokensusdc-ops.jsUSDC transfers, approvals, allowancesswap-tokens.jsTrade tokens via DEX (generic)swap-kona.jsSwap on Kona Finance (V2) ✅swap-aborean.jsSwap on Aborean (Velodrome-style)swap-uniswap-v2.jsSwap on Uniswap V2myriad-trade.jsList markets, get info (Myriad API)myriad-buy-direct.jsPlace predictions on Myriad (on-chain) ✅call-contract.jsCall any contract functionmint-nft.jsMint NFTs to existing contractestimate-gas.jsEstimate gas costs before transactionswatch-events.jsMonitor on-chain events in real-timetestnet-setup.jsSetup and verify testnet access"
      },
      {
        "title": "References",
        "body": "FileContentsagw.mdAbstract Global Wallet guide (XP, activation)dex.mdDEX contracts & swap patterns (Kona, Aborean)myriad.mdMyriad prediction market contracts, ABI & tradinghardhat.config.jsWorking Hardhat config for Abstractaddresses.mdKey contract addressestroubleshooting.mdCommon errors and fixesSimpleNFT.solBasic NFT contract template"
      },
      {
        "title": "⚠️ CRITICAL: Contract Deployment",
        "body": "Abstract is a zkSync-based chain. Standard EVM deployment methods DON'T WORK."
      },
      {
        "title": "What WORKS ✅",
        "body": "// Use zksync-ethers (NOT viem, NOT standard ethers)\nconst { ContractFactory } = require(\"zksync-ethers\");\nconst factory = new ContractFactory(abi, bytecode, wallet);\nconst contract = await factory.deploy(args);\n\n// ALWAYS verify bytecode after deploy\nconst code = await provider.getCode(address);\nif (code === '0x') throw new Error(\"Deploy failed!\");"
      },
      {
        "title": "What DOESN'T WORK ❌",
        "body": "// DON'T use viem's deployContract\nawait walletClient.deployContract({...}); // Returns success but NO BYTECODE\n\n// DON'T use standard ethers ContractFactory\n// DON'T trust transaction success alone"
      },
      {
        "title": "Deployment Checklist",
        "body": "Compiled with zksolc (not standard solc)\n Using zksync-ethers ContractFactory\n Verify eth_getCode != 0x after deploy\n Test contract functions before sending tokens"
      },
      {
        "title": "Common Issues",
        "body": "Gas estimation fails → Use Hardhat, not foundry-zksync\nCompiler errors → Use Solidity 0.8.x with zksolc\nTX stuck → Check gas price, verify on abscan.org\nDeploy succeeds but no bytecode → Use zksync-ethers, not viem\nTokens sent to empty address → Always verify bytecode first!\n\nSee references/troubleshooting.md for detailed solutions."
      },
      {
        "title": "Dependencies",
        "body": "# Core dependencies\nnpm install ethers zksync-ethers viem\n\n# For contract deployment\nnpm install @matterlabs/hardhat-zksync\n\n# For AGW (Abstract Global Wallet) - PIN THE VERSION!\n# Different versions compute different AGW addresses\nnpm install @abstract-foundation/agw-client@1.10.0\n\n⚠️ agw-client version warning: Newer versions may use different factory contracts, computing different AGW addresses for the same EOA. If you change versions, verify your AGW address hasn't changed before sending funds!"
      }
    ],
    "body": "Abstract Onboard\n\nEverything an AI agent needs to operate on Abstract (ZK Stack L2).\n\n🚀 New Agent? Start Here\n# Check if you're ready to operate\nnode scripts/quick-start.js check <your-wallet-address>\n\n# Or get the full setup guide\nnode scripts/quick-start.js\n\nQuick Start\nCreate Abstract Global Wallet (AGW)\n\nAGW is a smart contract wallet that earns XP on Abstract. Essential for agents!\n\n⚠️ CRITICAL: Understand the 3 layers first:\n\nPrivate Key → EOA (signer) → AGW (smart contract wallet)\n\n\nThe correct funding flow:\n\n1. Fund EOA with small ETH (for gas)\n2. Create/deploy AGW (EOA pays gas for first tx)\n3. Fund AGW with your main balance\n4. Everything runs through AGW from now on\n\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/create-agw.js\n\n\nYour EOA becomes the signer, AGW is a separate smart contract address.\n\n⚠️ Version Warning: Different agw-client versions may compute different AGW addresses! Always pin your version. See references/agw.md for details.\n\nCheck Balances\nnode scripts/check-balances.js <wallet> all\n\nBridge ETH to Abstract\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/relay-bridge.js --from base --amount 0.01\n\nDeploy a Contract\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/deploy-abstract.js ./artifacts/MyContract.json \"constructor-arg\"\n\nTransfer Tokens\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/transfer.js --to 0x... --amount 0.01           # ETH\nnode scripts/transfer.js --to 0x... --amount 100 --token USDC  # Token\n\nSwap Tokens\nexport WALLET_PRIVATE_KEY=0x...\nexport DEX_ROUTER=0x...  # Set DEX router address\nnode scripts/swap-tokens.js --from ETH --to USDC --amount 0.01\n\nDEX Trading (Kona & Aborean)\n\nAbstract has multiple DEXs. Use the protocol-specific scripts for best results:\n\n# Kona Finance (V2) - USDC → ETH\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/swap-kona.js\n\n# Aborean (Velodrome-style) - when router is available\nnode scripts/swap-aborean.js\n\n# Generic Uniswap V2\nnode scripts/swap-uniswap-v2.js\n\n\nSee references/dex.md for contract addresses and supported pools.\n\nMyriad Prediction Markets\n\nTrade on Myriad Markets — the largest prediction market on Abstract (415K+ users, $100M+ volume).\n\n# List open markets\nnode scripts/myriad-trade.js list\n\n# Get market details\nnode scripts/myriad-trade.js info <marketId>\n\n# Buy shares (place a prediction)\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/myriad-buy-direct.js <marketId> <outcomeId> <amount>\n\n# Example: $1 USDC.e on \"Yes\" for market 765\nnode scripts/myriad-buy-direct.js 765 0 1\n\n\nSee references/myriad.md for contract addresses, ABI details, and token info.\n\nCall Any Contract\n# Read\nnode scripts/call-contract.js --address 0x... --abi ./abi.json --function balanceOf --args 0x1234\n\n# Write\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/call-contract.js --address 0x... --abi ./abi.json --function transfer --args 0x1234,100 --write\n\nMint NFT\n# Deploy SimpleNFT.sol first, then mint\nexport WALLET_PRIVATE_KEY=0x...\n\n# Mint to existing contract\nnode scripts/mint-nft.js --contract 0x... --image QmIPFShash --to 0xRecipient --name \"My NFT\"\n\n\nSee references/SimpleNFT.sol for a basic NFT contract template.\n\nUSDC Operations\n# Check USDC balance\nnode scripts/usdc-ops.js balance <wallet>\n\n# Transfer USDC\nexport WALLET_PRIVATE_KEY=0x...\nnode scripts/usdc-ops.js transfer <to> <amount>\n\n# Approve spender\nnode scripts/usdc-ops.js approve <spender> <amount>\n\n# Check allowance\nnode scripts/usdc-ops.js allowance <owner> <spender>\n\nEstimate Gas\n# Get current gas prices\nnode scripts/estimate-gas.js\n\n# Estimate transfer cost\nnode scripts/estimate-gas.js transfer <to> <amount>\n\n# Estimate deployment cost\nnode scripts/estimate-gas.js deploy <bytecodeSize>\n\nWatch Events\n# Watch new blocks\nnode scripts/watch-events.js blocks\n\n# Watch ETH transfers to/from wallet\nnode scripts/watch-events.js transfers <wallet>\n\n# Watch ERC20 transfers\nnode scripts/watch-events.js erc20 <token> <wallet>\n\n# Watch contract events\nnode scripts/watch-events.js contract <address>\n\nTestnet Setup\n# Get faucet instructions\nnode scripts/testnet-setup.js faucet\n\n# Check testnet balance\nnode scripts/testnet-setup.js check <wallet>\n\n# Verify testnet setup\nnode scripts/testnet-setup.js verify <wallet>\n\nKey Information\nItem\tValue\nChain ID\t2741\nRPC\thttps://api.mainnet.abs.xyz\nExplorer\thttps://abscan.org\nBridge\thttps://relay.link/bridge/abstract\nUSDC\t0x84A71ccD554Cc1b02749b35d22F684CC8ec987e1\nWETH\t0x3439153EB7AF838Ad19d56E1571FBD09333C2809\nKona Router\t0x441E0627Db5173Da098De86b734d136b27925250\nUniswap V2 Router\t0xad1eCa41E6F772bE3cb5A48A6141f9bcc1AF9F7c\nMyriad PM Contract\t0x3e0F5F8F5Fb043aBFA475C0308417Bf72c463289\nMyriad PTS Token\t0x0b07cf011B6e2b7E0803b892d97f751659940F23\nMyriad API\thttps://api-v2.myriadprotocol.com\nScripts\nScript\tPurpose\nquick-start.js\tSTART HERE - Setup guide & health check\ncreate-agw.js\tCreate Abstract Global Wallet (earns XP!)\ncheck-balances.js\tCheck ETH and token balances\nrelay-bridge.js\tBridge ETH from other chains\nbridge-usdc-relay.js\tBridge USDC via Relay API\ndeploy-abstract.js\tDeploy contracts to Abstract (with verification!)\nverify-contract.js\tVerify contract has bytecode (SAFETY CHECK)\ntransfer.js\tSend ETH or tokens\nusdc-ops.js\tUSDC transfers, approvals, allowances\nswap-tokens.js\tTrade tokens via DEX (generic)\nswap-kona.js\tSwap on Kona Finance (V2) ✅\nswap-aborean.js\tSwap on Aborean (Velodrome-style)\nswap-uniswap-v2.js\tSwap on Uniswap V2\nmyriad-trade.js\tList markets, get info (Myriad API)\nmyriad-buy-direct.js\tPlace predictions on Myriad (on-chain) ✅\ncall-contract.js\tCall any contract function\nmint-nft.js\tMint NFTs to existing contract\nestimate-gas.js\tEstimate gas costs before transactions\nwatch-events.js\tMonitor on-chain events in real-time\ntestnet-setup.js\tSetup and verify testnet access\nReferences\nFile\tContents\nagw.md\tAbstract Global Wallet guide (XP, activation)\ndex.md\tDEX contracts & swap patterns (Kona, Aborean)\nmyriad.md\tMyriad prediction market contracts, ABI & trading\nhardhat.config.js\tWorking Hardhat config for Abstract\naddresses.md\tKey contract addresses\ntroubleshooting.md\tCommon errors and fixes\nSimpleNFT.sol\tBasic NFT contract template\n⚠️ CRITICAL: Contract Deployment\n\nAbstract is a zkSync-based chain. Standard EVM deployment methods DON'T WORK.\n\nWhat WORKS ✅\n// Use zksync-ethers (NOT viem, NOT standard ethers)\nconst { ContractFactory } = require(\"zksync-ethers\");\nconst factory = new ContractFactory(abi, bytecode, wallet);\nconst contract = await factory.deploy(args);\n\n// ALWAYS verify bytecode after deploy\nconst code = await provider.getCode(address);\nif (code === '0x') throw new Error(\"Deploy failed!\");\n\nWhat DOESN'T WORK ❌\n// DON'T use viem's deployContract\nawait walletClient.deployContract({...}); // Returns success but NO BYTECODE\n\n// DON'T use standard ethers ContractFactory\n// DON'T trust transaction success alone\n\nDeployment Checklist\n Compiled with zksolc (not standard solc)\n Using zksync-ethers ContractFactory\n Verify eth_getCode != 0x after deploy\n Test contract functions before sending tokens\nCommon Issues\nGas estimation fails → Use Hardhat, not foundry-zksync\nCompiler errors → Use Solidity 0.8.x with zksolc\nTX stuck → Check gas price, verify on abscan.org\nDeploy succeeds but no bytecode → Use zksync-ethers, not viem\nTokens sent to empty address → Always verify bytecode first!\n\nSee references/troubleshooting.md for detailed solutions.\n\nDependencies\n# Core dependencies\nnpm install ethers zksync-ethers viem\n\n# For contract deployment\nnpm install @matterlabs/hardhat-zksync\n\n# For AGW (Abstract Global Wallet) - PIN THE VERSION!\n# Different versions compute different AGW addresses\nnpm install @abstract-foundation/agw-client@1.10.0\n\n\n⚠️ agw-client version warning: Newer versions may use different factory contracts, computing different AGW addresses for the same EOA. If you change versions, verify your AGW address hasn't changed before sending funds!"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Masoncags-tech/abstract-onboard",
    "publisherUrl": "https://clawhub.ai/Masoncags-tech/abstract-onboard",
    "owner": "Masoncags-tech",
    "version": "1.6.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/abstract-onboard",
    "downloadUrl": "https://openagent3.xyz/downloads/abstract-onboard",
    "agentUrl": "https://openagent3.xyz/skills/abstract-onboard/agent",
    "manifestUrl": "https://openagent3.xyz/skills/abstract-onboard/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/abstract-onboard/agent.md"
  }
}