send-usdc
Send tokens (USDC, ETH, POL, or SOL) to an address or ENS name on Base, Polygon, or Solana. Use when you or the user want to send money, pay someone, transfer tokens, tip, donate, or send funds to a wallet address or .eth name. Covers phrases like "send $5 to", "pay 0x...", "transfer to vitalik.eth", or "send USDC on Solana".
How do I install this agent skill?
npx skills add https://github.com/coinbase/agentic-wallet-skills --skill send-usdcIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill facilitates cryptocurrency transfers using the Coinbase Agent Wallet (awal) CLI. It incorporates comprehensive input validation guidelines and regex patterns to protect against shell injection and ensures that all external dependencies are retrieved from the official NPM registry.
- Socketwarn
1 alert: gptSecurity
- Snykwarn
Risk: MEDIUM · 3 issues
- Runlayerpass
1 file scanned · No issues
- ZeroLeakspass
1 finding · Score: 86/100
What does this agent skill do?
Sending Tokens
Use the npx awal@2.10.0 send command to transfer tokens from the wallet to any address on Base, Polygon, or Solana.
Confirm wallet is initialized and authed
npx awal@2.10.0 status
If the wallet is not authenticated, refer to the authenticate-wallet skill.
Command Syntax
npx awal@2.10.0 send <amount> <recipient> [--chain <chain>] [--asset <asset>] [--json]
Arguments
| Argument | Description |
|---|---|
amount | Amount to send: '$1.00', '1.00', or atomic units (1000000 = $1). Always single-quote amounts that use $ to prevent bash variable expansion. If the number looks like atomic units (no decimal or > 100), treat as atomic units. Assume that people won't be sending more than 100 USDC the majority of the time |
recipient | Ethereum address (0x...), ENS name (vitalik.eth), or Solana address (Base58) |
Options
| Option | Description |
|---|---|
--chain <name> | Blockchain network: base, polygon, solana (default: base) |
--asset <symbol> | Token to send: usdc, eth, pol, sol (default: usdc) |
--json | Output result as JSON |
Input Validation
Before constructing the command, validate all user-provided values to prevent shell injection:
- amount: Must match
^\$?[\d.]+$(digits, optional decimal point, optional$prefix). Reject if it contains spaces, semicolons, pipes, backticks, or other shell metacharacters. - recipient: Must be a valid
0xhex address (^0x[0-9a-fA-F]{40}$), an ENS name (^[a-zA-Z0-9.-]+\.eth$), or a Solana address (^[1-9A-HJ-NP-Za-km-z]{32,44}$). Reject any value containing spaces or shell metacharacters. - chain: Must be one of
base,polygon,solana. Reject any other value. - asset: Must be one of
usdc,eth,pol,sol. Reject any other value.
Do not pass unvalidated user input into the command.
Examples
# Send $1.00 USDC to an address on Base (default)
npx awal@2.10.0 send 1 0x1234...abcd
# Send $0.50 USDC to an ENS name
npx awal@2.10.0 send 0.50 vitalik.eth
# Send with dollar sign prefix (note the single quotes)
npx awal@2.10.0 send '$5.00' 0x1234...abcd
# Send ETH on Base
npx awal@2.10.0 send 0.01 0x1234...abcd --asset eth
# Send USDC on Polygon
npx awal@2.10.0 send 1 0x1234...abcd --chain polygon
# Send USDC to a Solana address
npx awal@2.10.0 send 1 AxW7...5fGz --chain solana
# Get JSON output
npx awal@2.10.0 send 1 vitalik.eth --json
ENS Resolution
ENS names are automatically resolved to addresses via Ethereum mainnet. The command will:
- Detect ENS names (any string containing a dot that isn't a hex address)
- Resolve the name to an address
- Display both the ENS name and resolved address in the output
Prerequisites
- Must be authenticated (
npx awal@2.10.0 statusto check,npx awal@2.10.0 auth loginto sign in, see skillauthenticate-walletfor more information) - Wallet must have sufficient USDC balance (
npx awal balanceto check)
Error Handling
Common errors:
- "Not authenticated" - Run
awal auth login <email>first - "Insufficient balance" - Check balance with
awal balance - "Could not resolve ENS name" - Verify the ENS name exists
- "Invalid recipient" - Must be valid 0x address, ENS name, or Solana Base58 address
- "SOL only supported on Solana chains" - Use
--chain solanawhen sending SOL - "ETH/POL only supported on EVM chains" - ETH on base, POL on polygon
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/coinbase/agentic-wallet-skills/send-usdc">View send-usdc on skillZs</a>