diff --git a/radicle-cli/src/terminal/io.rs b/radicle-cli/src/terminal/io.rs index aea6269f..86832245 100644 --- a/radicle-cli/src/terminal/io.rs +++ b/radicle-cli/src/terminal/io.rs @@ -177,7 +177,9 @@ pub fn abort(prompt: D) -> bool { /// Get the signer. First we try getting it from ssh-agent, otherwise we prompt the user. pub fn signer(profile: &Profile) -> anyhow::Result> { - let signer = if let Ok(signer) = profile.signer() { + let signer = if let Ok(passphrase) = read_passphrase_from_env_var() { + MemorySigner::load(&profile.keystore, passphrase)?.boxed() + } else if let Ok(signer) = profile.signer() { signer.boxed() } else { let passphrase = secret_input();