- Sending USDC
- Use the
- npx awal@2.0.3 send
- command to transfer USDC from the wallet to any Ethereum address or ENS name on Base.
- Confirm wallet is initialized and authed
- npx awal@2.0.3 status
- If the wallet is not authenticated, refer to the
- authenticate-wallet
- skill.
- Command Syntax
- npx awal@2.0.3 send
- <
- amount
- >
- <
- recipient
- >
- [
- --chain
- <
- chain
- >
- ]
- [
- --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...) or ENS name (vitalik.eth)
- Options
- Option
- Description
- --chain
- Blockchain network (default: base)
- --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 0x hex address ( ^0x[0-9a-fA-F]{40}$ ) or an ENS name ( ^[a-zA-Z0-9.-]+.eth$ ). Reject any value containing spaces or shell metacharacters. Do not pass unvalidated user input into the command. Examples
Send $1.00 USDC to an address
npx awal@2.0.3 send 1 0x1234 .. .abcd
Send $0.50 USDC to an ENS name
npx awal@2.0.3 send 0.50 vitalik.eth
Send with dollar sign prefix (note the single quotes)
npx awal@2.0.3 send '$5.00' 0x1234 .. .abcd
Get JSON output
npx awal@2.0.3 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.0.3 status
to check,
npx awal@2.0.3 auth login
to sign in, see skill
authenticate-wallet
for more information)
Wallet must have sufficient USDC balance (
npx awal balance
to check)
Error Handling
Common errors:
"Not authenticated" - Run
awal auth login