diff --git a/crates/cast/src/cmd/wallet/list.rs b/crates/cast/src/cmd/wallet/list.rs index 2f01f9e526685..6a4da6a0f18f2 100644 --- a/crates/cast/src/cmd/wallet/list.rs +++ b/crates/cast/src/cmd/wallet/list.rs @@ -77,6 +77,7 @@ impl ListArgs { .gcp(self.gcp || (self.all && gcp_env_vars_set())) .turnkey(self.turnkey || self.all) .interactives(0) + .interactive(false) .build() .expect("build multi wallet"); diff --git a/crates/wallets/src/wallet_multi/mod.rs b/crates/wallets/src/wallet_multi/mod.rs index bb492d7331c23..7e098002a26e0 100644 --- a/crates/wallets/src/wallet_multi/mod.rs +++ b/crates/wallets/src/wallet_multi/mod.rs @@ -93,15 +93,13 @@ pub struct MultiWalletOpts { /// Open an interactive prompt to enter your private key. /// /// Takes a value for the number of keys to enter. - #[arg( - long, - short, - help_heading = "Wallet options - raw", - default_value = "0", - value_name = "NUM" - )] + #[arg(long, help_heading = "Wallet options - raw", default_value = "0", value_name = "NUM")] pub interactives: u32, + /// Open an interactive prompt to enter your private key. + #[arg(long, short, help_heading = "Wallet options - raw", conflicts_with = "interactives")] + pub interactive: bool, + /// Use the provided private keys. #[arg(long, help_heading = "Wallet options - raw", value_name = "RAW_PRIVATE_KEYS")] #[builder(default = "None")] @@ -264,6 +262,9 @@ impl MultiWalletOpts { if let Some(mnemonics) = self.mnemonics()? { signers.extend(mnemonics); } + if self.interactive { + pending.push(PendingSigner::Interactive); + } if self.interactives > 0 { pending.extend(std::iter::repeat_n( PendingSigner::Interactive,