name: wdk-wallet description: Interact with WDK-managed wallets — check balances, send USDT, manage Aave positions, query TRON energy costs version: 1.0.0 metadata: openclaw: requires: env: - WDK_SEED_PHRASE - TRON_API_KEY - ARBITRUM_RPC_URL - BASE_RPC_URL emoji: "💼" homepage: https://docs.wallet.tether.io
WDK Wallet
This skill provides access to the agent's self-custodial wallets across TRON, Base, and Arbitrum via Tether's Wallet Development Kit (WDK). All signing happens locally — the seed phrase never leaves the machine.
Available Tools
Balance queries
check_tron_balance(address?) Returns the USDT TRC-20 balance of the agent's TRON wallet (or a specific address).
address— optional; defaults to the agent's primary TRON address
check_evm_balance(chain, token) Returns token balance on an EVM chain.
chain—"base"|"arbitrum"token—"USDC"|"USDT"|"ETH"
get_aave_position() Returns the agent's current Aave USDT deposit balance and accrued yield on Arbitrum.
get_trx_balance() Returns the agent's TRX balance (used for energy sponsorship reserve).
Capital operations
deposit_aave(amount_usdt) Deposit USDT into the Aave lending pool on Arbitrum.
amount_usdt— decimal string, e.g."100.00"- Returns the Aave deposit transaction hash.
withdraw_aave(amount_usdt) Withdraw USDT from the Aave lending pool.
amount_usdt— decimal string, or"MAX"to withdraw the full position.- Returns the withdrawal transaction hash.
swap_usdc_to_usdt(amount_usdc) Swap USDC on Base to USDT on Arbitrum via the Velora DEX aggregator.
amount_usdc— decimal string- Returns estimated USDT received and the swap transaction hash.
Information
get_aave_apy() Returns the current Aave USDT variable supply APY as a percentage. Useful for the capital allocation decision: if APY < 2%, Aave deployment may not cover gas overhead.
get_wallet_addresses() Returns the agent's primary addresses on each supported chain:
- TRON (HD index 0)
- Base
- Arbitrum
Usage notes
- All monetary amounts are decimal strings (e.g.
"50.00"), never raw numbers, to avoid floating-point precision issues. deposit_aaveandwithdraw_aaverequire USDT on Arbitrum. If the agent's USDT is on TRON, it must be bridged first (not yet supported — describe the limitation in responses rather than attempting it).- Energy sponsorship (covering TRX for gasless TRON transfers) is handled automatically by the relay's service layer; this skill does not need to manage it directly.
- Never request the seed phrase or private keys — they are managed internally by WDK and are not exposed through these tools.