Skip to main content

Trading

Pawz includes a trading dashboard for cryptocurrency operations via Coinbase, Ethereum DEX (Uniswap V3), and Solana DEX (Jupiter + PumpPortal). :::warning Trading involves real money. Configure safety limits before enabling. :::

Trading policy

Go to Settings → Advanced to configure safety limits:
SettingDefaultDescription
Auto-approveOffAllow trades without human approval
Max trade (USD)$100Maximum single trade size
Max daily loss (USD)$500Stop trading if daily losses exceed this
Allowed pairs[]Restrict to specific trading pairs
Allow transfersOffAllow sending crypto to external wallets
Max transfer (USD)$0Maximum single transfer amount

Dashboard

The trading view shows:
CardDescription
Today’s P&LProfit/loss for the current day
Bought TodayTotal buy volume
Sold TodayTotal sell volume
TransfersTotal transfer volume
DEX SwapsTotal DEX swap volume
Total OperationsNumber of trades today
Daily SpentRunning total against daily limit

Coinbase (CDP Agentic Wallet)

Enable the Coinbase skill in the Skills tab and configure:
CredentialRequiredDescription
CDP_API_KEY_NAMEYesThe name field from your cdp_api_key.json
CDP_API_KEY_SECRETYesThe privateKey field from your cdp_api_key.json

Getting your CDP API key

  1. Go to Coinbase Developer Platform and sign in
  2. Navigate to API KeysCreate API Key
  3. Download the cdp_api_key.json file
  4. Open the file — it contains two fields you need:
    • "name" → paste into API Key Name (looks like organizations/abc123/apiKeys/xyz789)
    • "privateKey" → paste into API Secret (base64 string or PEM block)
  5. In Pawz: open Skills → Coinbase → Configure and paste both values
Tools: coinbase_balance, coinbase_price, coinbase_buy, coinbase_sell, coinbase_send, coinbase_wallet_create

Self-custody wallets

Coinbase wallets are self-custody via MPC (Multi-Party Computation) — private keys are split and never exist in full on any single device. Pawz communicates with Coinbase’s CDP API using your API credentials, but the wallet keys themselves are secured by Coinbase’s MPC infrastructure.

Ethereum DEX (Uniswap V3)

Enable the DEX Trading skill in the Skills tab and configure your RPC endpoint:
CredentialRequiredDescription
DEX_RPC_URLYesEthereum JSON-RPC endpoint from a node provider
DEX_PRIVATE_KEYAutoGenerated by dex_wallet_create — leave blank
DEX_WALLET_ADDRESSAutoGenerated by dex_wallet_create — leave blank
:::info DEX_PRIVATE_KEY and DEX_WALLET_ADDRESS are auto-generated when you ask your agent to create a wallet (it runs dex_wallet_create). You don’t need to fill these in manually unless you’re importing an existing wallet. :::

Getting your RPC endpoint

You need a JSON-RPC endpoint from a node provider. Free tiers are sufficient for personal use. Option 1: Alchemy (recommended)
  1. Sign up at alchemy.com
  2. Create a new app → select Ethereum (or your target chain)
  3. Copy the HTTPS URL (looks like https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY)
  4. Paste into DEX_RPC_URL
Option 2: Infura
  1. Sign up at infura.io
  2. Create a new API key
  3. Copy the endpoint URL (looks like https://mainnet.infura.io/v3/YOUR_KEY)
  4. Paste into DEX_RPC_URL
Option 3: Your own node If you run your own Ethereum node (Geth, Nethermind, etc.), use its HTTP JSON-RPC URL (e.g. http://localhost:8545). :::warning The RPC URL must be an HTTP/HTTPS endpoint, not a WebSocket (wss://). Pawz uses JSON-RPC over HTTP for all blockchain calls. :::

Setting up your first EVM wallet

  1. Enable DEX Trading skill and configure DEX_RPC_URL (see above)
  2. Tell your agent: “Create a new DEX wallet”
  3. The agent runs dex_wallet_create which:
    • Generates a secp256k1 keypair locally
    • Encrypts the private key with AES-256 and stores it in your OS keychain vault
    • Saves the wallet address
    • Detects the connected chain from the RPC endpoint
  4. Fund the wallet — send ETH to the displayed address from another wallet or exchange
  5. Start trading: “Buy 0.1 ETH worth of PEPE”

Supported EVM chains

ChainType
EthereumMainnet
GoerliTestnet
SepoliaTestnet
PolygonL2
ArbitrumL2
OptimismL2
BaseL2

Known EVM tokens

The following 12 tokens are recognized by default (no address lookup required): ETH · WETH · USDC · USDT · DAI · WBTC · UNI · LINK · PEPE · SHIB · ARB · AAVE Any other ERC-20 token can be traded by providing its contract address.

Fee tiers

Uniswap V3 pools use discrete fee tiers. The router automatically selects the tier with the best liquidity, but you can override it in dex_quote:
TierTypical use
0.01%Stable-to-stable pairs (e.g. USDC/USDT)
0.05%Correlated pairs (e.g. ETH/WETH)
0.3%Most pairs (default)
1%Exotic / low-liquidity pairs

Slippage (EVM)

Default slippage tolerance is 0.5%. Maximum allowed slippage is 5%. You can override per-swap via the slippage parameter on dex_swap.

Price feed

USD valuations for portfolio and P&L cards are sourced from the DexScreener price feed, which aggregates prices across all major DEXes in real time. Tools (14):
ToolDescription
dex_wallet_createCreate a new wallet
dex_balanceCheck wallet balance
dex_quoteGet a swap quote
dex_swapExecute a swap
dex_approveApprove token spending for the Uniswap router
dex_transferTransfer tokens
dex_portfolioView portfolio
dex_token_infoToken details
dex_check_tokenToken safety check
dex_search_tokenSearch for tokens
dex_watch_walletMonitor a wallet
dex_whale_transfersTrack large transfers
dex_top_tradersTop traders for a token
dex_trendingTrending tokens

Honeypot detection

dex_check_token performs a comprehensive honeypot analysis before you trade an unknown token:
  1. Simulated buy + sell — executes a round-trip trade in a forked environment to verify the token can actually be sold after purchase.
  2. Round-trip tax — measures the percentage lost between buy and sell to detect hidden taxes or transfer fees.
  3. Ownership audit — checks whether the contract owner can mint, pause, or blacklist.
  4. ERC-20 compliance — verifies the token implements the standard ERC-20 interface correctly (transfer, approve, transferFrom, balanceOf).
  5. Risk score — returns a score from 0 (safe) to 30 (extreme risk). Tokens scoring above 15 trigger a warning; above 25, the swap is blocked unless force-approved.
:::tip Always run dex_check_token on unfamiliar tokens before swapping. A failing simulation is the strongest signal that a token is a honeypot. :::

Whale tracking

dex_whale_transfers monitors the blockchain for large token transfers and surfaces real-time alerts:
  • Configurable USD threshold (default: $100,000)
  • Shows sender, receiver, token, amount, and USD value
  • Highlights transfers involving known exchange hot wallets or smart-contract deployers
  • Useful for spotting accumulation or distribution before price moves

Smart money

dex_top_traders identifies the most profitable wallets trading a specific token:
  • Ranks wallets by realized P&L over 24h, 7d, or 30d
  • Shows win rate, average trade size, and total volume
  • Cross-references with known fund and MEV bot addresses
  • Use this to follow high-conviction traders into new positions

Solana DEX (Jupiter + PumpPortal)

Enable the Solana DEX skill in the Skills tab and configure your RPC endpoint:
CredentialRequiredDescription
SOLANA_RPC_URLYesSolana JSON-RPC endpoint from a node provider
JUPITER_API_KEYOptionalJupiter swap API key — improves routing but not required
SOLANA_PRIVATE_KEYAutoGenerated by sol_wallet_create — leave blank
SOLANA_WALLET_ADDRESSAutoGenerated by sol_wallet_create — leave blank
:::info SOLANA_PRIVATE_KEY and SOLANA_WALLET_ADDRESS are auto-generated when you ask your agent to create a wallet (it runs sol_wallet_create). You don’t need to fill these in manually unless you’re importing an existing wallet. :::

Getting your Solana RPC endpoint

Option 1: Alchemy
  1. Sign up at alchemy.com
  2. Create a new app → select Solana
  3. Copy the HTTPS URL (looks like https://solana-mainnet.g.alchemy.com/v2/YOUR_KEY)
  4. Paste into SOLANA_RPC_URL
Option 2: Helius
  1. Sign up at helius.dev
  2. Create a new project → copy the RPC URL
  3. Paste into SOLANA_RPC_URL
Option 3: QuickNode
  1. Sign up at quicknode.com
  2. Create a Solana endpoint → copy the HTTP URL
  3. Paste into SOLANA_RPC_URL

Getting a Jupiter API key (optional)

Jupiter works without an API key but rate limits are lower. For a free API key:
  1. Go to dev.jup.ag
  2. Sign up and navigate to Dashboard → API Keys
  3. Create a key and paste it into JUPITER_API_KEY
PumpPortal (the fallback for pump.fun tokens) needs no API key at all.

Setting up your first Solana wallet

  1. Enable Solana DEX skill and configure SOLANA_RPC_URL (see above)
  2. Tell your agent: “Create a new Solana wallet”
  3. The agent runs sol_wallet_create which:
    • Generates an Ed25519 keypair locally
    • Encrypts the private key and stores it in your OS keychain vault
    • Saves the wallet address
    • Verifies the RPC connection and displays the Solana node version
  4. Fund the wallet — send SOL to the displayed address from another wallet or exchange
  5. Start trading: “Swap 1 SOL for BONK”

Routing

Swaps are routed through the Jupiter Metis v1 API, which finds the optimal route across all Solana DEXes (Orca, Raydium, Meteora, etc.) in a single call. For tokens launched on pump.fun, PumpSwap, or Raydium that are not yet indexed by Jupiter, the router falls back to PumpPortal for direct on-chain execution.

Known Solana tokens

The following 11 tokens are recognized by default: SOL · USDC · USDT · BONK · JUP · RAY · PYTH · WIF · ORCA · MSOL · JITOSOL Any other SPL token can be traded by providing its mint address.

Slippage (Solana)

Default slippage tolerance is 50 bps (0.5%). For meme tokens with high volatility, slippage can be raised up to 5000 bps (50%) via the slippage_bps parameter on sol_swap. Jupiter will always attempt the tightest execution within the allowed range.

Transaction signing

All Solana transactions are signed locally using Ed25519 (the Solana native signature scheme). Both versioned (v0) and legacy transaction formats are supported — the SDK auto-selects the best format based on the instructions involved (v0 is preferred when address lookup tables are available).

SPL Token transfers

sol_transfer handles native SOL and any SPL token. For SPL transfers the tool:
  1. Derives the recipient’s Associated Token Account (ATA) from their wallet address and the token mint.
  2. Auto-creates the ATA if it does not yet exist (the sender pays the ~0.002 SOL rent).
  3. Transfers the specified amount in a single atomic transaction.
Tools (7):
ToolDescription
sol_wallet_createCreate a new Solana wallet
sol_balanceCheck wallet balance (SOL + SPL tokens)
sol_quoteGet a swap quote via Jupiter / PumpPortal
sol_swapExecute a swap
sol_transferTransfer SOL or SPL tokens to another wallet
sol_portfolioView full portfolio with USD valuations
sol_token_infoToken details (supply, holders, metadata)

Positions

Track open positions with:
  • Entry price and amount
  • Stop-loss percentage
  • Take-profit percentage
  • Current price tracking
  • Status: open, closed_sl, closed_tp, closed_manual

Security

  • Coinbase uses CDP API keys for authentication — wallet keys are secured via MPC (Multi-Party Computation) on Coinbase’s infrastructure
  • EVM wallets are self-custody — private keys are generated locally, encrypted with AES-256, and stored in the OS keychain vault. They never leave the machine
  • Solana wallets are self-custody — same vault encryption as EVM, using Ed25519 keypairs
  • Credentials are server-side only — API keys, RPC URLs, and private keys are never injected into agent prompts or sent to LLM providers
  • Trade approval checks the trading policy (amount limits, allowed pairs, daily spend) before executing
  • DEX and Solana tools are auto-approved (no human-in-the-loop delay) for fast execution
  • Transfers require explicit allow_transfers: true in the trading policy
  • USD valuations are sourced from the DexScreener price feed (no trading account needed)