smithery/bankrbot

Bankr x402 SDK - Wallet Operations

This skill should be used when the user asks to "set up the SDK", "initialize BankrClient", "configure wallet", "set up payment wallet", "connect wallet to Bankr", "get wallet address", "set up environment variables", "configure private key", "two wallet setup", "separate payment and trading wallets", or needs help with SDK client initialization, two-wallet configuration, wallet address derivation, environment setup, or BankrClient options.

Installation

$ npx skills add smithery/bankrbot --skill bankr-x402-sdk-wallet-operations

Summary

This skill should be used when the user asks to "set up the SDK", "initialize BankrClient", "configure wallet", "set up payment wallet", "connect wallet to Bankr", "get wallet address", "set up environment variables", "configure private key", "two wallet setup", "separate payment and trading wallets", or needs help with SDK client initialization, two-wallet configuration, wallet address derivation, environment setup, or BankrClient options.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery/bankrbot · top by installs.

npx skills add smithery/bankrbot

Browse all from smithery/bankrbot

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.1.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,026 B
  • docs SUMMARY.md 484 B

History

  1. First recorded snapshot · 0 installs

SKILL.md

SDK Wallet Operations

Initialize and configure the BankrClient with proper wallet setup.

Two-Wallet System

Wallet Purpose Required
Payment (privateKey) Signs x402 micropayments ($0.01/request) Yes
Context (walletAddress) Receives swapped tokens, NFTs No (defaults to payment wallet)

Basic Setup

import { BankrClient } from "@bankr/sdk";

const client = new BankrClient({
  privateKey: process.env.BANKR_PRIVATE_KEY as `0x${string}`,
});

const result = await client.promptAndWait({
  prompt: "What are my balances?",
});

Separate Wallets (Recommended)

For enhanced security, use different wallets for payments and receiving:

const client = new BankrClient({
  // Hot wallet with minimal USDC for payments
  privateKey: process.env.PAYMENT_WALLET_PK as `0x${string}`,
  // Cold/trading wallet receives tokens
  walletAddress: process.env.RECEIVING_WALLET,
});

Configuration Options

Option Type Required Description
privateKey 0x${string} Yes Payment wallet private key
walletAddress string No Override receiving wallet
baseUrl string No API endpoint (default: production)
timeout number No Request timeout ms (default: 600000)

SDK Methods

Method Description
promptAndWait() Submit prompt and wait for result
prompt() Submit prompt, return immediately
pollJob() Poll until job completes
getJobStatus() Check job status once
cancelJob() Cancel pending/processing job
getWalletAddress() Get context wallet address

Per-Request Override

// Override wallet for a single request
const result = await client.promptAndWait({
  prompt: "Swap 0.1 ETH to USDC",
  walletAddress: "0xDifferentWallet...",
});

Environment Setup

# Required
BANKR_PRIVATE_KEY=0x...your_payment_wallet_key...

# Optional
BANKR_WALLET_ADDRESS=0x...your_receiving_wallet...

Security Best Practices

  1. Never commit private keys - Use environment variables
  2. Minimize payment wallet balance - Keep only $1-2 USDC
  3. Use separate wallets - Payment (hot) vs receiving (cold)
  4. Rotate keys periodically - If payment wallet compromised

Related Skills

  • sdk-capabilities: Full list of supported operations
  • sdk-job-management: Async job handling and polling