Send Usdc
This skill enables users to send USDC to any Ethereum address or ENS name on the Base network. It uses the npx awal@2.0.3 send command and requires the walle...
Install
npx promptshop add send-usdcDetails
What This Skill Does
This skill enables users to send USDC to any Ethereum address or ENS name on the Base network. It uses the npx awal@2.0.3 send command and requires the wallet to be initialized and authenticated. This is useful for transferring USDC to other users or accounts.
When to Use
- Send USDC to a friend.
- Pay for a service with USDC.
- Transfer USDC to another wallet.
- Send a specific amount of USDC.
- Use an ENS name as the recipient.
- Send USDC on the Base network.
Key Features
Sends USDC to Ethereum addresses or ENS names. Supports specifying the amount in USD or atomic units. Validates user-provided values to prevent shell injection. Uses the npx awal@2.0.3 send command. Defaults to the Base network. Requires wallet authentication.
Manual Installation
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 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 or ENS name 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 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 or ENS name