Loading...
Loading...
Use the OwlPay Wallet Pro CLI (owlp) to manage crypto wallets, check balances, and view transactions. Use when the user wants to interact with their OwlPay wallet via CLI commands.
npx skill4agent add owlting/owlpay-wallet-pro-cli owlp-clinode -v && npm -vowlp -V # check if already installednpm install -g @owlpay/owlp-cli
owlp -V # should print "OwlPay Wallet Pro CLI v0.5.13" or laterRESULT=$(owlp status --json 2>/dev/null) && echo "$RESULT" | jq '.data | {account: .account.ready, wallets: .wallets.ready, kyc: .kyc.ready}'| Condition | Action | Agent-automatable? |
|---|---|---|
| Two-step flow: (1) run | Partially — agent runs the commands; human opens browser and reads the passcode |
| Security-sensitive. Strongly recommend the user run | Requires explicit user consent |
| Only needed for fiat withdrawal (off-ramp). Crypto transfers work without KYC. If needed: (1) run | Partially — agent runs the commands; human completes verification in browser |
falseready: trueowlp onboard --jsonowlp auth loginkyc submit --jsonkyc wait --jsonowlp kyc submit--stage~/.owlpay-wallet-pro/config.jsonprodRESULT=$(owlp env get --json 2>/dev/null) && echo "$RESULT" | jq '.data | {env, source}' # Show current env
owlp env set stage # Persist env to config.json
owlp env set prod # Switch back to prod
RESULT=$(owlp balance --stage --json 2>/dev/null) && echo "$RESULT" | jq -r '.data[] | "\(.symbol): \(.balance)"' # One-off stage overridestageenv--json{"type":"meta.env",...}--json--stage--wallet <name>--debug-Venv getenv setauth logoutwallet createwallet importwallet listwallet renamewallet switchwallet export-keywallet resetNETWORK_ERRORauth loginauth statusstatusbalancesendtx listtx detailchainstokenscountriesverifykyc statuskyc submitwallet-pro.owlting.comNetworkErrorowlp ... --jsonowlp ... --jsonRESULT=$(owlp <command> --json 2>/dev/null) && echo "$RESULT" | jq '<filter>'# ✓ Correct — only the parsed summary appears in the conversation
RESULT=$(owlp status --json 2>/dev/null) && echo "$RESULT" | jq '.data | {account: .account.ready, kyc: .kyc.ready, wallets: .wallets.ready}'
RESULT=$(owlp balance --json 2>/dev/null) && echo "$RESULT" | jq -r '.data[] | "\(.chain) \(.symbol): \(.balance)"'
RESULT=$(owlp wallet list --json 2>/dev/null) && echo "$RESULT" | jq -r '.data.wallets[] | .name'# ✗ WRONG — bare command, JSON floods conversation
owlp status --json
owlp status --json 2>/dev/null
owlp balance --json
owlp balance --json 2>/dev/null
owlp wallet list --jsonRESULT=$(owlp ... --json 2>/dev/null)echo "$RESULT" | jq -r '...'--json{
"success": true,
"env": "prod",
"data": { ... }
}.data.<field>RESULT=$(owlp balance --json 2>/dev/null) && echo "$RESULT" | jq -r '.data[] | "\(.chain) \(.symbol): \(.balance)"'sendkyc submitonboard{"type":"meta.env",...}{"type":"complete","result":...}send.mdkyc.mdowlp onboard --jsonowlp auth loginowlp auth login # Interactive (opens browser — human only)
owlp auth logout # Clear local session (keeps wallets)
RESULT=$(owlp auth status --json 2>/dev/null) && echo "$RESULT" | jq '.data | {loggedIn, email, workspace: .workspace.name}'env getchainstokenscountriesverifyskills/commands/env.mdskills/commands/auth.mdauth loginauth logoutauth statusskills/commands/onboard.mdskills/commands/wallet.mdskills/commands/balance.mdskills/commands/tx.mdskills/commands/send.mdskills/commands/chains.mdskills/commands/verify.mdskills/commands/countries.mdskills/commands/kyc.mdskills/commands/status.mdskills/commands/reset.mdowlp resetowlp reset --allowlp onboard--jsonskills/commands/onboard.md--skip-kycReminder: everycall below must follow § Output Discipline — capture to a variable, parse with jq, never expose raw JSON.owlp ... --json
# 1. Verify destination address (auto-detects chain)
RESULT=$(owlp verify <address> --json 2>/dev/null) && echo "$RESULT" | jq '.data'
# 2. Confirm token is supported on that chain
RESULT=$(owlp tokens --chain <chain> --json 2>/dev/null) && echo "$RESULT" | jq -r '.data[] | .symbol'
# 3. Check you have sufficient balance
RESULT=$(owlp balance --chain <chain> --json 2>/dev/null) && echo "$RESULT" | jq -r '.data[] | "\(.symbol): \(.balance)"'
# 4. Preview the transfer and estimated fees (no --confirm)
RESULT=$(owlp send --to <address> --amount <n> --token <symbol> --chain <chain> --json 2>/dev/null) && echo "$RESULT" | jq '.data'
# 5. Execute the transfer
RESULT=$(owlp send --to <address> --amount <n> --token <symbol> --chain <chain> --confirm --json 2>/dev/null) && echo "$RESULT" | jq '.data'
# 6. Confirm transaction appears in history
RESULT=$(owlp tx list --type send --json 2>/dev/null) && echo "$RESULT" | jq -r '.data[] | "\(.id) \(.type) \(.amount) \(.symbol)"'
# 7. Poll for final state using the transaction ID (envelope: data.type, data.detail.*)
RESULT=$(owlp tx detail <id> --json 2>/dev/null) && echo "$RESULT" | jq '.data.detail.state'
# Poll until data.detail.state === "completed" && data.detail.order.blockchain_transaction.state === "confirmed"
# (send envelope only — see skills/commands/tx.md for per-type field tables)RESULT=$(owlp kyc status --json 2>/dev/null) && echo "$RESULT" | jq '{status: .data.status, verified: .data.verified}'
# status == "verified" && verified == true — ready for fiat withdrawal
# any other status — off-ramp not availablesendonboardkyc submitINSUFFICIENT_GASwallet createwallet importwallet export-key## Agent Response## Agent Response~/.owlpay-wallet-pro/config.json{"env":"prod"|"stage"}prod/auth.jsonstage/auth.jsonprod/wallets.jsonstage/wallets.json