Metadata-Version: 2.4
Name: revault-cli
Version: 1.0.1
Summary: CLI password manager for server credentials with SSH connector
License: MIT
Project-URL: Homepage, https://github.com/sufi-an/re-vault
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: typer>=0.9.0
Requires-Dist: cryptography>=41.0.3
Requires-Dist: pexpect>=4.8.0; sys_platform != "win32"
Requires-Dist: paramiko>=3.4.0

Author was lost in a sea of server credentials, brain.exe could not handle so much info
Wrote a password manager to store server credentails(Yes, ENCRYPTED)
then thought why should I connect.
so 
re-valut connect myserver :)

## Install

```bash
# pipx keeps it isolated (recommended)
pipx install revault-cli

# or plain pip
pip install revault-cli
```

Then use `re-vault` instead of `python cli.py`:
```bash
re-vault add myserver
re-vault connect myserver
```

---

## How to use

Each command prompts for your **master password** (it is never stored). The vault
lives at `~/.passkeeper/vault.json` and is locked to your user account on both
Unix (`chmod 0o600`) and Windows (`icacls`).

| Command | What it does |
| --- | --- |
| `re-vault add <identifier>`     | Prompt for username + password and store them encrypted under `<identifier>`. |
| `re-vault show <identifier>`    | Decrypt and print the username + password. |
| `re-vault list`                 | List all stored identifiers. |
| `re-vault connect <identifier>` | Decrypt the entry and SSH in, auto-sending the password. |
| `re-vault remove <identifier>`  | Delete a stored entry permanently. |

### Example

```bash
# Store credentials for a server (username should be the full SSH target, e.g. user@host)
$ re-vault add myserver
Master password:
Username: deploy@198.51.100.10
Password:
Entry 'myserver' added successfully!

# Look them up later
$ re-vault show myserver
Master password:
Username: deploy@198.51.100.10
Password: ...

# List everything you've stored
$ re-vault list
Stored entries:
- myserver

# Connect over SSH without typing the password
$ re-vault connect myserver
```

## Release

Push a version tag to trigger a PyPI publish:
```bash
git tag v1.0.1 && git push origin v1.0.1
```
