purple-ssh 3.4.1

Open-source terminal SSH manager that keeps ~/.ssh/config in sync with your cloud infra. Spin up a VM on AWS, GCP, Azure, Hetzner or 12 other cloud providers and it appears in your host list. Destroy it and the entry dims. Search hundreds of hosts, transfer files, manage Docker and Podman over SSH, sign Vault SSH certs. Rust TUI, MIT licensed.
Documentation
use std::path::{Path, PathBuf};

/// Common SSH connection context passed to remote operations.
pub struct SshContext<'a> {
    pub alias: &'a str,
    pub config_path: &'a Path,
    pub askpass: Option<&'a str>,
    pub bw_session: Option<&'a str>,
    pub has_tunnel: bool,
}

/// Owned variant for spawning into threads.
pub struct OwnedSshContext {
    pub alias: String,
    pub config_path: PathBuf,
    pub askpass: Option<String>,
    pub bw_session: Option<String>,
    pub has_tunnel: bool,
}