agent-wallet
Single-source wallet skill for generate, import, get-balance, sign, and send flows using local wallet files plus executable Node scripts. Use when the user asks for wallet creation, recovery, balance checks, message signing, or transaction sending.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/beardkoda/ai-agent-walletAgent Wallet Skill
Changelog: CHANGELOG.md
Purpose
Use this file as the only wallet skill entrypoint for local wallet workflows.
Runtime Requirements
- Runtime: Node.js 18+
- Required package:
viem - Required secret key:
WALLET_SECRET_KEY(used for local secret encryption/decryption) - Wallet signer file:
wallet/signer.json - Network config file:
wallet/config.json
Executable Scripts
Run these scripts from agent-wallet-skills for each action:
generate-wallet:node scripts/generate-wallet.js --method=<private-key|seed-phrase> [--overwrite=true]import-wallet:node scripts/import-wallet.js --seedPhrase="<words>" [--overwrite=true]or--privateKey=0x...get-balance:node scripts/get-balance.js --address=0x... [--tokenAddress=0x...] [--decimals=18] [--symbol=TOKEN]sign-messages:node scripts/sign-messages.js --message="hello from wallet"send(native):node scripts/send.js --to=0x... --amount=<native-amount> --confirm=true [--confirmMainnet=true]send(token):node scripts/send.js --to=0x... --amount=<token-amount> --tokenAddress=0x... [--decimals=18] [--symbol=TOKEN] --confirm=true [--confirmMainnet=true]
Notes:
- Wallet material is stored in
wallet/signer.jsonas encrypted fields only. - Default network is loaded from
wallet/config.jsonwith shape[{ rpc_url, chain_id, current }]. send.jsrequires explicit--confirm=true.- Mainnet broadcasts require an additional
--confirmMainnet=true.
Routing Logic
- Identify user intent:
- create/recover/import wallet ->
generate-walletorimport-wallet - check native/token balance ->
get-balance - sign arbitrary payload/message ->
sign-messages - transfer/broadcast transaction ->
send
- create/recover/import wallet ->
- Precheck
wallet/config.jsonfor read/write chain operations (get-balance,send, and any network-aware generation flow):- require array format
[{ rpc_url, chain_id, current }] - require exactly one entry with
current: true - require non-empty
rpc_urlandchain_idon the current entry - if invalid, stop and ask user to set defaults first
- require array format
- Execute the script mapped to the action:
generate-wallet->node scripts/generate-wallet.js --method=<private-key|seed-phrase>import-wallet->node scripts/import-wallet.js --seedPhrase="<words>"or--privateKey=0x...get-balance->node scripts/get-balance.js --address=0x... [--tokenAddress=0x...]sign-messages->node scripts/sign-messages.js --message="hello from wallet"send(native) ->node scripts/send.js --to=0x... --amount=<native-amount> --confirm=true [--confirmMainnet=true]send(token) ->node scripts/send.js --to=0x... --amount=<token-amount> --tokenAddress=0x... [--decimals=18] [--symbol=TOKEN] --confirm=true [--confirmMainnet=true]
- If
wallet/signer.jsonalready exists and user asks to regenerate/import over it, require explicit confirmation first.
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-beardkoda-ai-agent-wallet": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
psilo
Use this skill when an agent needs to: (1) create on-chain escrow contracts via EscrowFactory, (2) release escrowed funds via arbiter-signed transactions, and (3) interact with the Pakt Escrow service using the @pakt/psilo SDK. Authentication and wallet: choose SIWA or Evalanche.
agent-wallet
Route wallet workflows for agents that need to generate or import wallets using either a seed phrase or private key. Use when the user asks for wallet creation, import, recovery, or key-based onboarding.
tace
TACE (Tender Agentic Commerce Engine) runtime contract. Includes concrete payloads required by current endpoints.