sushiswap-sdk
>
Swap or trade tokens on Base network. Use when you or the user want to trade, swap, exchange, buy, sell, or convert between tokens like USDC, ETH, and WETH. Covers phrases like "buy ETH", "sell ETH for USDC", "convert USDC to ETH", "get some ETH".
Sign in to like and favorite skills
>
Query real-time and historical financial data across equities and crypto—prices, market moves, metrics, and trends for analysis, alerts, and reporting.
Promote Doppel world builds across social platforms. Use when the agent wants to share builds on Twitter/X, Farcaster, Telegram, or Moltbook to drive observers, grow reputation, and recruit collaborators.
Use the
npx awal@latest trade command to swap tokens on Base network via the CDP Swap API. You must be authenticated to trade.
npx awal@latest status
If the wallet is not authenticated, refer to the
authenticate-wallet skill.
npx awal@latest trade <amount> <from> <to> [options]
| Argument | Description |
|---|---|
| Amount to swap (see Amount Formats below) |
| Source token: alias (usdc, eth, weth) or contract address (0x...) |
| Destination token: alias (usdc, eth, weth) or contract address (0x...) |
The amount can be specified in multiple formats:
| Format | Example | Description |
|---|---|---|
| Dollar prefix | , | USD notation (decimals based on token) |
| Decimal | , , | Human-readable with decimal point |
| Whole number | , | Interpreted as whole tokens |
| Atomic units | | Large integers treated as atomic units |
Auto-detection: Large integers without a decimal point are treated as atomic units. For example,
500000 for USDC (6 decimals) = $0.50.
Decimals: For known tokens (usdc=6, eth=18, weth=18), decimals are automatic. For arbitrary contract addresses, decimals are read from the token contract.
| Option | Description |
|---|---|
| Blockchain network (default: base) |
| Slippage tolerance in basis points (100 = 1%) |
| Output result as JSON |
| Alias | Token | Decimals | Address |
|---|---|---|---|
| usdc | USDC | 6 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| eth | ETH | 18 | 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE |
| weth | WETH | 18 | 0x4200000000000000000000000000000000000006 |
IMPORTANT: Always single-quote amounts that use
$ to prevent bash variable expansion (e.g. '$1.00' not $1.00).
# Swap $1 USDC for ETH (dollar prefix — note the single quotes) npx awal@latest trade '$1' usdc eth # Swap 0.50 USDC for ETH (decimal format) npx awal@latest trade 0.50 usdc eth # Swap 500000 atomic units of USDC for ETH npx awal@latest trade 500000 usdc eth # Swap 0.01 ETH for USDC npx awal@latest trade 0.01 eth usdc # Swap with custom slippage (2%) npx awal@latest trade '$5' usdc eth --slippage 200 # Swap using contract addresses (decimals read from chain) npx awal@latest trade 100 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 0x4200000000000000000000000000000000000006 # Get JSON output npx awal@latest trade '$1' usdc eth --json
awal status to check)Common errors:
awal auth login <email> first