{
  "schemaVersion": "1.0",
  "item": {
    "slug": "clankerkit",
    "name": "ClankerKit",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/0xsoydev/clankerkit",
    "canonicalUrl": "https://clawhub.ai/0xsoydev/clankerkit",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/clankerkit",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=clankerkit",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "package-lock.json",
      "package.json",
      "skill.json",
      "src/index.ts"
    ],
    "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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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/clankerkit"
    },
    "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/clankerkit",
    "agentPageUrl": "https://openagent3.xyz/skills/clankerkit/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clankerkit/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clankerkit/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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "ClankerKit - Autonomous Wallet for AI Agents on Monad",
        "body": "ClankerKit gives your AI agent autonomous financial capabilities on Monad blockchain. Deploy a smart contract wallet, set spending policies, swap tokens via Kuru DEX, stake MON, trade memecoins with strategies, and execute cross-chain swaps."
      },
      {
        "title": "Quick Start",
        "body": "# Install the skill\nclaw skill install clankerkit"
      },
      {
        "title": "Environment Variables",
        "body": "VariableRequiredDescriptionAGENT_WALLET_ADDRESSYesDeployed AgentWallet contract addressPOLICY_ENGINE_ADDRESSYesDeployed PolicyEngine contract addressAGENT_PRIVATE_KEYYesAgent's private key (with 0x prefix)OWNER_ADDRESSYesHuman owner addressMONAD_RPC_URLNoMonad RPC URL (default: testnet)MONAD_NETWORKNotestnet or mainnet (default: testnet)ZEROX_API_KEYNo0x Swap API key (only for zerox_swap)"
      },
      {
        "title": "Wallet Management",
        "body": "get_wallet_info\n\nGet wallet address, owner, agent, MON balance, and policy state.\n\nget_token_balance\n\nGet ERC-20 token balance of the agent wallet.\n\ntoken: Token symbol (WMON, USDC, CHOG, DAK, YAKI) or contract address\n\nsend_tokens\n\nSend native MON tokens from the wallet.\n\nto: Recipient address\namount: Amount in human-readable form (e.g. \"0.5\")\n\nsend_token\n\nSend ERC-20 tokens from the wallet.\n\ntoken: Token contract address\nto: Recipient address\namount: Amount in human-readable form\n\nexecute_transaction\n\nExecute an arbitrary contract call via the wallet.\n\ntarget: Target contract address\nvalue: Native MON to send (wei, default \"0\")\ndata: Encoded calldata (hex)\n\nensure_gas\n\nEnsure the agent EOA has enough MON for gas fees. If the EOA balance is below the minimum threshold, automatically sends MON from the AgentWallet contract to the EOA. Users only need to fund the wallet contract — the agent tops up its own gas from there.\n\nminBalance: Minimum acceptable EOA balance in MON (human-readable, default \"0.01\")\ntopUpAmount: Amount of MON to send to EOA if below minimum (human-readable, default \"0.05\")"
      },
      {
        "title": "Policy & Security",
        "body": "get_policy\n\nView current spending limits (daily/weekly), usage, and allowlists.\n\ncreate_policy\n\nCreate a spending policy. Must be called once before guarded transactions work.\n\ndailyLimit: Max MON per day (human-readable, e.g. \"1.0\")\nweeklyLimit: Max MON per week (defaults to 7x daily)\nallowedTokens: Optional ERC-20 address allowlist\nallowedContracts: Optional contract address allowlist\nrequireApprovalAbove: MON threshold for owner approval\n\nupdate_daily_limit\n\nUpdate the daily spending limit.\n\nnewLimit: New limit in human-readable MON"
      },
      {
        "title": "Token Swaps (Kuru DEX)",
        "body": "swap_tokens\n\nSwap tokens on Monad via Kuru Flow aggregator. Accepts symbols (MON, USDC, WMON, CHOG, DAK, AUSD, WETH, WBTC) or contract addresses.\n\ntokenIn: Source token (symbol or address)\ntokenOut: Destination token (symbol or address)\namount: Human-readable amount (e.g. \"0.01\")\nslippage: Slippage in bps (default: 50 = 0.5%)\n\nget_swap_quote\n\nGet a swap quote without executing.\n\ntokenIn, tokenOut, amount: Same as swap_tokens"
      },
      {
        "title": "Staking",
        "body": "stake_mon\n\nStake MON with a validator to earn rewards.\n\namount: MON to stake (human-readable)\nvalidatorId: Validator ID (optional, uses default)\n\nunstake_mon\n\nBegin unstaking MON from a validator.\n\namount: MON to unstake (human-readable)\nvalidatorId: Validator ID (optional)\nwithdrawId: Withdrawal ID (default: 0)\n\nwithdraw_stake\n\nWithdraw unstaked MON after the 1-epoch delay.\n\nvalidatorId, withdrawId: Optional\n\nclaim_staking_rewards\n\nClaim accumulated staking rewards.\n\nvalidatorId: Optional\n\ncompound_rewards\n\nRe-stake accumulated rewards.\n\nvalidatorId: Optional\n\nget_staking_info\n\nGet delegation info (staked amount, unclaimed rewards).\n\nvalidatorId: Optional"
      },
      {
        "title": "Kuru CLOB Orderbook Trading",
        "body": "get_kuru_markets\n\nList known Kuru CLOB orderbook markets on Monad mainnet.\n\nget_order_book\n\nFetch live L2 order book (bids/asks) for a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\n\nget_market_price\n\nGet best bid, ask, and mid price for a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\n\nkuru_market_order\n\nPlace a market (IOC) order on a Kuru CLOB market. Agent EOA must hold tokens.\n\nmarketAddress: Orderbook contract address\namount: Human-readable float\nisBuy: true for buy, false for sell\nminAmountOut: Minimum output (default: 0)\nslippageBps: Slippage in bps (default: 100)\n\nkuru_limit_order\n\nPlace a limit (GTC) order on a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\nprice: Price in quote asset (float)\nsize: Size in base asset (float)\nisBuy: true for bid, false for ask\npostOnly: Reject if it crosses spread (default: false)\n\ncancel_kuru_orders\n\nCancel open orders on a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\norderIds: Array of order ID strings"
      },
      {
        "title": "Memecoin Trading",
        "body": "get_meme_tokens\n\nGet live price metrics for all known Monad memecoins (DAK, CHOG, YAKI). Uses CLOB orderbooks with Kuru Flow fallback.\n\nget_token_price\n\nGet live price for a specific token by symbol or contract address.\n\ntoken: Symbol (DAK, CHOG, YAKI) or contract address\n\nsmart_trade\n\nEvaluate or execute an autonomous trading strategy.\n\ntoken: Token symbol\nstrategyType: dca, momentum, scalp, or hodl\nbudgetMon: Total budget in MON\nstopLoss: Stop-loss fraction (default: 0.1 = -10%)\ntakeProfit: Take-profit fraction (default: 0.3 = +30%)\ndcaIntervals: Number of DCA buys (default: 5)\nmomentumThreshold: Min 24h change for momentum (default: 0.05)\nautoExecute: Execute trades or dry-run (default: false)"
      },
      {
        "title": "Cross-Chain Swaps",
        "body": "kyber_swap\n\nSwap on Ethereum/Polygon/Arbitrum/Optimism/Base/BSC/Avalanche via KyberSwap. No API key needed. Uses agent EOA (not wallet contract).\n\nchain: Target chain name\ntokenIn, tokenOut: Token addresses on target chain\namountIn: Amount in smallest unit (wei)\nslippageBps: Slippage (default: 50)\nrecipient: Recipient address (default: agent EOA)\n\nzerox_swap\n\nSwap via 0x Swap API v2. Requires ZEROX_API_KEY.\n\nchain, tokenIn, tokenOut, amountIn, slippageBps: Same as kyber_swap"
      },
      {
        "title": "Payments & Identity",
        "body": "pay_for_service\n\nPay for an x402-enabled API endpoint.\n\nendpoint: API endpoint URL\namount: Payment in USDC\n\nregister_agent\n\nRegister on ERC-8004 identity registry.\n\nname: Agent name\ndescription: Agent description"
      },
      {
        "title": "Deployment",
        "body": "deploy_policy_engine\n\nDeploy a new PolicyEngine contract. The deployer becomes the owner. No parameters needed.\n\ndeploy_agent_wallet\n\nDeploy a new AgentWallet contract. Optionally deploys PolicyEngine too.\n\nowner: Address that owns the wallet\nagent: Agent EOA address allowed to call execute()\npolicyEngine: Optional existing PolicyEngine address"
      },
      {
        "title": "Security Features",
        "body": "Spending Limits: Daily and weekly caps on agent spending\nToken Allowlists: Restrict which tokens the agent can transfer\nContract Whitelists: Only allow calls to approved contracts\nApproval Thresholds: Require human approval above certain amounts\nEmergency Controls: Owner can pause or withdraw funds anytime\nAccess Control: PolicyEngine recordExecution() only callable by the wallet contract"
      },
      {
        "title": "Example Session",
        "body": "User: Check my gas and fund up if needed\n\nAgent: [calls ensure_gas]\nEOA already has sufficient gas balance. EOA: 0.221 MON, Wallet: 0.075 MON.\n\nUser: Set a daily limit of 2 MON\n\nAgent: [calls create_policy with dailyLimit=\"2.0\"]\nPolicy created: 2 MON daily, 14 MON weekly.\n\nUser: Swap 0.1 MON for CHOG\n\nAgent: [calls swap_tokens with tokenIn=\"MON\", tokenOut=\"CHOG\", amount=\"0.1\"]\nSwapped 0.1 MON -> 2.71 CHOG via Kuru Flow.\n\nUser: What's my portfolio?\n\nAgent: [calls get_wallet_info, get_meme_tokens, get_staking_info]\nWallet: 1.9 MON\nCHOG: 2.71 (worth ~0.1 MON)\nStaked: 0.5 MON with validator #1"
      },
      {
        "title": "License",
        "body": "MIT"
      }
    ],
    "body": "ClankerKit - Autonomous Wallet for AI Agents on Monad\n\nClankerKit gives your AI agent autonomous financial capabilities on Monad blockchain. Deploy a smart contract wallet, set spending policies, swap tokens via Kuru DEX, stake MON, trade memecoins with strategies, and execute cross-chain swaps.\n\nQuick Start\n# Install the skill\nclaw skill install clankerkit\n\nEnvironment Variables\nVariable\tRequired\tDescription\nAGENT_WALLET_ADDRESS\tYes\tDeployed AgentWallet contract address\nPOLICY_ENGINE_ADDRESS\tYes\tDeployed PolicyEngine contract address\nAGENT_PRIVATE_KEY\tYes\tAgent's private key (with 0x prefix)\nOWNER_ADDRESS\tYes\tHuman owner address\nMONAD_RPC_URL\tNo\tMonad RPC URL (default: testnet)\nMONAD_NETWORK\tNo\ttestnet or mainnet (default: testnet)\nZEROX_API_KEY\tNo\t0x Swap API key (only for zerox_swap)\nTools (32 total)\nWallet Management\nget_wallet_info\n\nGet wallet address, owner, agent, MON balance, and policy state.\n\nget_token_balance\n\nGet ERC-20 token balance of the agent wallet.\n\ntoken: Token symbol (WMON, USDC, CHOG, DAK, YAKI) or contract address\nsend_tokens\n\nSend native MON tokens from the wallet.\n\nto: Recipient address\namount: Amount in human-readable form (e.g. \"0.5\")\nsend_token\n\nSend ERC-20 tokens from the wallet.\n\ntoken: Token contract address\nto: Recipient address\namount: Amount in human-readable form\nexecute_transaction\n\nExecute an arbitrary contract call via the wallet.\n\ntarget: Target contract address\nvalue: Native MON to send (wei, default \"0\")\ndata: Encoded calldata (hex)\nensure_gas\n\nEnsure the agent EOA has enough MON for gas fees. If the EOA balance is below the minimum threshold, automatically sends MON from the AgentWallet contract to the EOA. Users only need to fund the wallet contract — the agent tops up its own gas from there.\n\nminBalance: Minimum acceptable EOA balance in MON (human-readable, default \"0.01\")\ntopUpAmount: Amount of MON to send to EOA if below minimum (human-readable, default \"0.05\")\nPolicy & Security\nget_policy\n\nView current spending limits (daily/weekly), usage, and allowlists.\n\ncreate_policy\n\nCreate a spending policy. Must be called once before guarded transactions work.\n\ndailyLimit: Max MON per day (human-readable, e.g. \"1.0\")\nweeklyLimit: Max MON per week (defaults to 7x daily)\nallowedTokens: Optional ERC-20 address allowlist\nallowedContracts: Optional contract address allowlist\nrequireApprovalAbove: MON threshold for owner approval\nupdate_daily_limit\n\nUpdate the daily spending limit.\n\nnewLimit: New limit in human-readable MON\nToken Swaps (Kuru DEX)\nswap_tokens\n\nSwap tokens on Monad via Kuru Flow aggregator. Accepts symbols (MON, USDC, WMON, CHOG, DAK, AUSD, WETH, WBTC) or contract addresses.\n\ntokenIn: Source token (symbol or address)\ntokenOut: Destination token (symbol or address)\namount: Human-readable amount (e.g. \"0.01\")\nslippage: Slippage in bps (default: 50 = 0.5%)\nget_swap_quote\n\nGet a swap quote without executing.\n\ntokenIn, tokenOut, amount: Same as swap_tokens\nStaking\nstake_mon\n\nStake MON with a validator to earn rewards.\n\namount: MON to stake (human-readable)\nvalidatorId: Validator ID (optional, uses default)\nunstake_mon\n\nBegin unstaking MON from a validator.\n\namount: MON to unstake (human-readable)\nvalidatorId: Validator ID (optional)\nwithdrawId: Withdrawal ID (default: 0)\nwithdraw_stake\n\nWithdraw unstaked MON after the 1-epoch delay.\n\nvalidatorId, withdrawId: Optional\nclaim_staking_rewards\n\nClaim accumulated staking rewards.\n\nvalidatorId: Optional\ncompound_rewards\n\nRe-stake accumulated rewards.\n\nvalidatorId: Optional\nget_staking_info\n\nGet delegation info (staked amount, unclaimed rewards).\n\nvalidatorId: Optional\nKuru CLOB Orderbook Trading\nget_kuru_markets\n\nList known Kuru CLOB orderbook markets on Monad mainnet.\n\nget_order_book\n\nFetch live L2 order book (bids/asks) for a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\nget_market_price\n\nGet best bid, ask, and mid price for a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\nkuru_market_order\n\nPlace a market (IOC) order on a Kuru CLOB market. Agent EOA must hold tokens.\n\nmarketAddress: Orderbook contract address\namount: Human-readable float\nisBuy: true for buy, false for sell\nminAmountOut: Minimum output (default: 0)\nslippageBps: Slippage in bps (default: 100)\nkuru_limit_order\n\nPlace a limit (GTC) order on a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\nprice: Price in quote asset (float)\nsize: Size in base asset (float)\nisBuy: true for bid, false for ask\npostOnly: Reject if it crosses spread (default: false)\ncancel_kuru_orders\n\nCancel open orders on a Kuru CLOB market.\n\nmarketAddress: Orderbook contract address\norderIds: Array of order ID strings\nMemecoin Trading\nget_meme_tokens\n\nGet live price metrics for all known Monad memecoins (DAK, CHOG, YAKI). Uses CLOB orderbooks with Kuru Flow fallback.\n\nget_token_price\n\nGet live price for a specific token by symbol or contract address.\n\ntoken: Symbol (DAK, CHOG, YAKI) or contract address\nsmart_trade\n\nEvaluate or execute an autonomous trading strategy.\n\ntoken: Token symbol\nstrategyType: dca, momentum, scalp, or hodl\nbudgetMon: Total budget in MON\nstopLoss: Stop-loss fraction (default: 0.1 = -10%)\ntakeProfit: Take-profit fraction (default: 0.3 = +30%)\ndcaIntervals: Number of DCA buys (default: 5)\nmomentumThreshold: Min 24h change for momentum (default: 0.05)\nautoExecute: Execute trades or dry-run (default: false)\nCross-Chain Swaps\nkyber_swap\n\nSwap on Ethereum/Polygon/Arbitrum/Optimism/Base/BSC/Avalanche via KyberSwap. No API key needed. Uses agent EOA (not wallet contract).\n\nchain: Target chain name\ntokenIn, tokenOut: Token addresses on target chain\namountIn: Amount in smallest unit (wei)\nslippageBps: Slippage (default: 50)\nrecipient: Recipient address (default: agent EOA)\nzerox_swap\n\nSwap via 0x Swap API v2. Requires ZEROX_API_KEY.\n\nchain, tokenIn, tokenOut, amountIn, slippageBps: Same as kyber_swap\nPayments & Identity\npay_for_service\n\nPay for an x402-enabled API endpoint.\n\nendpoint: API endpoint URL\namount: Payment in USDC\nregister_agent\n\nRegister on ERC-8004 identity registry.\n\nname: Agent name\ndescription: Agent description\nDeployment\ndeploy_policy_engine\n\nDeploy a new PolicyEngine contract. The deployer becomes the owner. No parameters needed.\n\ndeploy_agent_wallet\n\nDeploy a new AgentWallet contract. Optionally deploys PolicyEngine too.\n\nowner: Address that owns the wallet\nagent: Agent EOA address allowed to call execute()\npolicyEngine: Optional existing PolicyEngine address\nSecurity Features\nSpending Limits: Daily and weekly caps on agent spending\nToken Allowlists: Restrict which tokens the agent can transfer\nContract Whitelists: Only allow calls to approved contracts\nApproval Thresholds: Require human approval above certain amounts\nEmergency Controls: Owner can pause or withdraw funds anytime\nAccess Control: PolicyEngine recordExecution() only callable by the wallet contract\nExample Session\nUser: Check my gas and fund up if needed\n\nAgent: [calls ensure_gas]\nEOA already has sufficient gas balance. EOA: 0.221 MON, Wallet: 0.075 MON.\n\nUser: Set a daily limit of 2 MON\n\nAgent: [calls create_policy with dailyLimit=\"2.0\"]\nPolicy created: 2 MON daily, 14 MON weekly.\n\nUser: Swap 0.1 MON for CHOG\n\nAgent: [calls swap_tokens with tokenIn=\"MON\", tokenOut=\"CHOG\", amount=\"0.1\"]\nSwapped 0.1 MON -> 2.71 CHOG via Kuru Flow.\n\nUser: What's my portfolio?\n\nAgent: [calls get_wallet_info, get_meme_tokens, get_staking_info]\nWallet: 1.9 MON\nCHOG: 2.71 (worth ~0.1 MON)\nStaked: 0.5 MON with validator #1\n\nLicense\n\nMIT"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/0xsoydev/clankerkit",
    "publisherUrl": "https://clawhub.ai/0xsoydev/clankerkit",
    "owner": "0xsoydev",
    "version": "0.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/clankerkit",
    "downloadUrl": "https://openagent3.xyz/downloads/clankerkit",
    "agentUrl": "https://openagent3.xyz/skills/clankerkit/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clankerkit/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clankerkit/agent.md"
  }
}