Problem
After the explicit default-token PR (CLI follow-up to PR #87), fast fund usdc crypto <amount> --chain <X> on mainnet defaults --token to network.defaultToken.symbol — which is fastUSD. But fastUSD is Fast-native; it has no EVM-side entry. So fund usdc crypto on mainnet without --token errors with CommandUnsupportedForTokenError and a suggestion to pass --token USDC.
The command name fund usdc crypto literally says "usdc," but the user must still type --token USDC to make it work. That's friction the suggestion text papers over rather than removing.
Options
(a) Command-local default override. fund usdc crypto defaults --token to USDC regardless of network.defaultToken. The command name's "usdc" becomes load-bearing in code, not just in the human-readable label.
(b) Make --token required at parser level for fund usdc crypto. The error fires earlier (parse-time, not handler-time) with a clean "you must pass --token" message. The default goes away entirely for this command.
(c) Rename the command to fund crypto and decouple the name from the asset. Bigger UX change; touches the parser tree and the docs / SKILL.md prominently.
Each has tradeoffs around discoverability, predictability, and surface area. Worth a brief design discussion before picking one.
Context
Problem
After the explicit default-token PR (CLI follow-up to PR #87),
fast fund usdc crypto <amount> --chain <X>on mainnet defaults--tokentonetwork.defaultToken.symbol— which isfastUSD. ButfastUSDis Fast-native; it has no EVM-side entry. Sofund usdc cryptoon mainnet without--tokenerrors withCommandUnsupportedForTokenErrorand a suggestion to pass--token USDC.The command name
fund usdc cryptoliterally says "usdc," but the user must still type--token USDCto make it work. That's friction the suggestion text papers over rather than removing.Options
(a) Command-local default override.
fund usdc cryptodefaults--tokentoUSDCregardless ofnetwork.defaultToken. The command name's "usdc" becomes load-bearing in code, not just in the human-readable label.(b) Make
--tokenrequired at parser level forfund usdc crypto. The error fires earlier (parse-time, not handler-time) with a clean "you must pass--token" message. The default goes away entirely for this command.(c) Rename the command to
fund cryptoand decouple the name from the asset. Bigger UX change; touches the parser tree and the docs / SKILL.md prominently.Each has tradeoffs around discoverability, predictability, and surface area. Worth a brief design discussion before picking one.
Context