x is a simple command-line vault. You run a small host process, point your machines at it, and every secret stays in sync.
- Save passwords, secure notes, or card details (all encrypted before they leave your machine).
- Generate strong passwords on demand.
- Export or import your data when you need a backup.
- Run the host anywhere: your laptop, a Raspberry Pi, or a remote VM.
-
Install
- Windows (PowerShell)
Set
iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/aledlb8/x/main/install.ps1'))
X_VERSION,X_INSTALL_ROOT,X_INSTALL_BIN_DIR, orX_TARGETbefore running if you need to pin a release or customize the install location/target triple. - Linux or macOS (Bash)
The script installs to
curl -fsSL https://raw.githubusercontent.com/aledlb8/x/main/install.sh | bash~/.local/binby default. SetX_INSTALL_ROOT,X_INSTALL_BIN_DIR, orX_TARGETto customize the destination or target triple.
- Windows (PowerShell)
-
Start the host (once):
x host
- Set a master password when prompted.
- The host remembers the hash so you won't be asked again unless you delete the data file.
-
Point a client at the host:
x cloud http://your-host:4000
- Enter the same master password the first time.
- From now on the CLI keeps an encrypted hash so routine commands don't ask again.
-
Use the vault commands:
x add # create a new entry x list # show stored names x get # view details (and copy sensitive fields) x edit # update an item x delete # remove an item x passgen # generate a password x export # write an encrypted JSON export x import # load an encrypted JSON export
Every command fetches the latest data from the host, applies your change, and saves it back immediately.
x cloud info– quick health check that the host is reachable and how many entries are stored.x cloud remove– forget the current host and stored hash (use this before switching servers).- Host data lives in
%APPDATA%/x_cli/cloud_host.dbon Windows,~/.local/share/x_cli/cloud_host.dbon Linux, or~/Library/Application Support/x_cli/cloud_host.dbon macOS (or the path you pass tox host --data). - Client settings live in
%APPDATA%/x_cli/config.jsonon Windows,~/.local/share/x_cli/config.jsonon Linux, or~/Library/Application Support/x_cli/config.jsonon macOS. Delete this file to force the CLI to re-prompt for the master password.
- The master password never leaves your machine; only a Blake3 hash is sent for authentication.
- Secrets are encrypted with AES-256-GCM before they travel to the host.
- Exports stay encrypted. If you lose the master password, you cannot decrypt them.
cargo fmt
cargo clippy --all-targets -- -D warnings
cargo check
cargo test
cargo buildFolders you will see:
cloud/– host API and HTTP client.commands/– all CLI subcommands.vault.rs– data model and encryption helpers.config.rs– minimal config loader/saver.
cargo build --release- Update the version in
Cargo.tomland create a matching tag (e.g.,v0.2.0). - Push the tag to GitHub (or trigger the
releaseworkflow manually). The workflow builds signed archives for:x86_64-pc-windows-msvcx86_64-unknown-linux-gnux86_64-apple-darwinaarch64-apple-darwin
- The workflow uploads assets named
x-<tag>-<target>.(zip|tar.gz)to the release. The installers andx updateuse these names, so keep the format intact.