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:| Setting | Default | Description |
|---|---|---|
| Auto-approve | Off | Allow trades without human approval |
| Max trade (USD) | $100 | Maximum single trade size |
| Max daily loss (USD) | $500 | Stop trading if daily losses exceed this |
| Allowed pairs | [] | Restrict to specific trading pairs |
| Allow transfers | Off | Allow sending crypto to external wallets |
| Max transfer (USD) | $0 | Maximum single transfer amount |
Dashboard
The trading view shows:| Card | Description |
|---|---|
| Today’s P&L | Profit/loss for the current day |
| Bought Today | Total buy volume |
| Sold Today | Total sell volume |
| Transfers | Total transfer volume |
| DEX Swaps | Total DEX swap volume |
| Total Operations | Number of trades today |
| Daily Spent | Running total against daily limit |
Coinbase (CDP Agentic Wallet)
Enable the Coinbase skill in the Skills tab and configure:| Credential | Required | Description |
|---|---|---|
CDP_API_KEY_NAME | Yes | The name field from your cdp_api_key.json |
CDP_API_KEY_SECRET | Yes | The privateKey field from your cdp_api_key.json |
Getting your CDP API key
- Go to Coinbase Developer Platform and sign in
- Navigate to API Keys → Create API Key
- Download the
cdp_api_key.jsonfile - Open the file — it contains two fields you need:
"name"→ paste into API Key Name (looks likeorganizations/abc123/apiKeys/xyz789)"privateKey"→ paste into API Secret (base64 string or PEM block)
- In Pawz: open Skills → Coinbase → Configure and paste both values
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:| Credential | Required | Description |
|---|---|---|
DEX_RPC_URL | Yes | Ethereum JSON-RPC endpoint from a node provider |
DEX_PRIVATE_KEY | Auto | Generated by dex_wallet_create — leave blank |
DEX_WALLET_ADDRESS | Auto | Generated by dex_wallet_create — leave blank |
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)- Sign up at alchemy.com
- Create a new app → select Ethereum (or your target chain)
- Copy the HTTPS URL (looks like
https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY) - Paste into
DEX_RPC_URL
- Sign up at infura.io
- Create a new API key
- Copy the endpoint URL (looks like
https://mainnet.infura.io/v3/YOUR_KEY) - Paste into
DEX_RPC_URL
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
- Enable DEX Trading skill and configure
DEX_RPC_URL(see above) - Tell your agent: “Create a new DEX wallet”
- The agent runs
dex_wallet_createwhich:- 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
- Fund the wallet — send ETH to the displayed address from another wallet or exchange
- Start trading: “Buy 0.1 ETH worth of PEPE”
Supported EVM chains
| Chain | Type |
|---|---|
| Ethereum | Mainnet |
| Goerli | Testnet |
| Sepolia | Testnet |
| Polygon | L2 |
| Arbitrum | L2 |
| Optimism | L2 |
| Base | L2 |
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 index_quote:
| Tier | Typical 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 theslippage 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):| Tool | Description |
|---|---|
dex_wallet_create | Create a new wallet |
dex_balance | Check wallet balance |
dex_quote | Get a swap quote |
dex_swap | Execute a swap |
dex_approve | Approve token spending for the Uniswap router |
dex_transfer | Transfer tokens |
dex_portfolio | View portfolio |
dex_token_info | Token details |
dex_check_token | Token safety check |
dex_search_token | Search for tokens |
dex_watch_wallet | Monitor a wallet |
dex_whale_transfers | Track large transfers |
dex_top_traders | Top traders for a token |
dex_trending | Trending tokens |
Honeypot detection
dex_check_token performs a comprehensive honeypot analysis before you trade an unknown token:
- Simulated buy + sell — executes a round-trip trade in a forked environment to verify the token can actually be sold after purchase.
- Round-trip tax — measures the percentage lost between buy and sell to detect hidden taxes or transfer fees.
- Ownership audit — checks whether the contract owner can mint, pause, or blacklist.
- ERC-20 compliance — verifies the token implements the standard ERC-20 interface correctly (transfer, approve, transferFrom, balanceOf).
- 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.
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:| Credential | Required | Description |
|---|---|---|
SOLANA_RPC_URL | Yes | Solana JSON-RPC endpoint from a node provider |
JUPITER_API_KEY | Optional | Jupiter swap API key — improves routing but not required |
SOLANA_PRIVATE_KEY | Auto | Generated by sol_wallet_create — leave blank |
SOLANA_WALLET_ADDRESS | Auto | Generated by sol_wallet_create — leave blank |
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- Sign up at alchemy.com
- Create a new app → select Solana
- Copy the HTTPS URL (looks like
https://solana-mainnet.g.alchemy.com/v2/YOUR_KEY) - Paste into
SOLANA_RPC_URL
- Sign up at helius.dev
- Create a new project → copy the RPC URL
- Paste into
SOLANA_RPC_URL
- Sign up at quicknode.com
- Create a Solana endpoint → copy the HTTP URL
- 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:- Go to dev.jup.ag
- Sign up and navigate to Dashboard → API Keys
- Create a key and paste it into
JUPITER_API_KEY
Setting up your first Solana wallet
- Enable Solana DEX skill and configure
SOLANA_RPC_URL(see above) - Tell your agent: “Create a new Solana wallet”
- The agent runs
sol_wallet_createwhich:- 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
- Fund the wallet — send SOL to the displayed address from another wallet or exchange
- 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 theslippage_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:
- Derives the recipient’s Associated Token Account (ATA) from their wallet address and the token mint.
- Auto-creates the ATA if it does not yet exist (the sender pays the ~0.002 SOL rent).
- Transfers the specified amount in a single atomic transaction.
| Tool | Description |
|---|---|
sol_wallet_create | Create a new Solana wallet |
sol_balance | Check wallet balance (SOL + SPL tokens) |
sol_quote | Get a swap quote via Jupiter / PumpPortal |
sol_swap | Execute a swap |
sol_transfer | Transfer SOL or SPL tokens to another wallet |
sol_portfolio | View full portfolio with USD valuations |
sol_token_info | Token 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: truein the trading policy - USD valuations are sourced from the DexScreener price feed (no trading account needed)

