Send Transaction
Transfer STRK, ETH, or ERC-20 tokens to a destination Starknet address. The CLI automatically checks balance before sending and validates the recipient address. Supports simulation (dry-run) mode to estimate fees without broadcasting.
Prerequisites
- Active session required.
- Sufficient balance for the transfer amount + gas fees.
Rules
- BEFORE any send, you MUST run
npx starkfi@latest statusandnpx starkfi@latest balanceto verify connectivity and funds. - If the recipient address was NOT previously mentioned in the conversation, you MUST ask for explicit confirmation: *"Sending [amount] [token] to [address]. Confirm?"*
- Suggest using
--simulatefirst for large amounts so the user can review the estimated fee before committing. - AFTER a successful send, you MUST verify the transaction using
npx starkfi@latest tx-status <hash>. - Starknet addresses start with
0xand can be up to 66 characters long (including the0xprefix).
Commands
npx starkfi@latest send <amount> <token> <recipient> [--simulate] [--json]Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
amount | number | Amount to send (e.g. 10, 0.5) | Yes |
token | string | Token symbol (e.g. STRK, ETH, USDC) | Yes |
recipient | string | Destination Starknet address (0x...) | Yes |
--simulate | flag | Estimate fees without broadcasting | No |
--json | flag | Output as JSON | No |
Examples
User: "Send 10 STRK to 0x04a3..."
npx starkfi@latest status
npx starkfi@latest balance --token STRK
# Confirm recipient with user if needed
npx starkfi@latest send 10 STRK 0x04a3...
npx starkfi@latest tx-status <hash>User: "Simulate sending 100 USDC to 0x07b2..."
npx starkfi@latest send 100 USDC 0x07b2... --simulateError Handling
| Error | Action |
|---|---|
Insufficient balance | Inform user of current balance via balance. |
Invalid address | Validate recipient is a valid 0x Starknet address. |
Simulation failed | Transaction would revert — check amount, token, and gas. |
Not authenticated | Run authenticate-wallet skill first. |
Related Skills
- Use
balanceto verify funds before sending. - Use
configto set a custom RPC if experiencing rate limits. - Use
tradeif the user needs to swap tokens before sending. - Use
confidentialfor privacy-preserving transfers (hidden amounts, ZK proofs).