winaskpass

Crates.iowinaskpass
lib.rswinaskpass
version0.4.0
created_at2025-12-30 16:12:19.704593+00
updated_at2026-01-15 13:20:08.658246+00
descriptionssh-add helper for WSL that stores passphrases in Windows Credential Manager
homepage
repositoryhttps://github.com/ilpianista/winaskpass
max_upload_size
id2012905
size87,371
Andrea Scarpino (ilpianista)

documentation

README

Crate

winaskpass

A Rust CLI tool that serves as an ssh-askpass helper for WSL (Windows Subsystem for Linux). It securely stores SSH key passphrases in the Windows Credential Manager so you don't have to re-enter them repeatedly.

Installation and building

WSL

By default this project uses PowerShell with embedded C# to call Windows APIs (credui.dll, advapi32.dll) since this runs in WSL.

cargo install can be used to install in ~/.cargo/bin/:

cargo install winaskpass

To build from the repository, use:

git clone https://github.com/ilpianista/winaskpass.git
cd winaskpass
cargo build --release --locked

Windows

WinGet can be used to install in %PATH%:

winget install winaskpass

When built natively uses Windows APIs directly, build with the native feature and the x86_64-pc-windows-msvc target:

git clone https://github.com/ilpianista/winaskpass.git
cd winaskpass
cargo build --release --no-default-features --features native --target x86_64-pc-windows-msvc

Setup

To make ssh use winaskpass set SSH_ASKPASS=/path/to/winaskpass or SSH_ASKPASS=/path/to/winaskpass.exe depending on your choice.

SSH_ASKPASS_REQUIRE=prefer might be required as well.

Then invoke ssh-add </dev/null.

Donate

Donations via Liberapay or Bitcoin (1Ph3hFEoQaD4PK6MhL3kBNNh9FZFBfisEH) are always welcomed, thank you!

License

MIT

Commit count: 0

cargo fmt