v1.4.2 — Formerly pacli · Now sinduk on PyPI

Secrets. Local. Encrypted.

sinduk (formerly pacli) is a secure, local-first CLI secrets manager. Store passwords, API keys & SSH credentials with AES encryption — zero cloud, zero trust required.

pip install sinduk View on GitHub
zsh — 80×24
$sinduk init
✓ sinduk initialized. Master password set.
$sinduk add --token openai-key
🔑 Enter value: ••••••••••••••••••••
✓ Secret "openai-key" saved securely.
$sinduk get openai-key --clip
✓ Copied to clipboard.
$
0
Cloud dependencies
18+
CLI Commands
MIT
License
3+
Secret Types

Everything lives
on your machine.

🔒
AES Encryption

All secrets are encrypted at rest with AES and protected by a master password. Your data never leaves your device unencrypted.

👥
Team Vaults & RBAC

Share isolated vaults with teammates using granular roles (viewer, editor, admin) and per-user wrapped cryptographic keys.

🔄
Zero-Knowledge Sync

Push and pull encrypted vaults using a shared folder (Dropbox, Git, NAS) or a self-hosted zero-knowledge relay server.

🖥️
Web UI Included

Launch a local web interface with sinduk web featuring vault switcher, member management, and audit log inspection.

📋
Clipboard & Pipelines

Retrieve any secret directly to your clipboard with --clip. Pipe any command output with sinduk cc.

🔑
SSH Management

Store SSH connections with host, user, and key file. Connect instantly with sinduk ssh <label> or in-browser terminal.

📦
Encrypted Backups

Export and import full encrypted vault backups with master password verification for disaster recovery.

🔗
URL Shortener

Shorten URLs via LinklyHQ directly from the CLI. Copy shortened links to clipboard with one flag.

Commands at a glance.

init Initialize and set master password
add Add a secret with a label (--vault)
get Retrieve a secret by label
list List all saved secrets
team Manage team vaults, members & roles
sync Push & pull encrypted vaults
server Self-hosted zero-knowledge relay
backup Encrypted export & import
ssh Connect via saved SSH credentials
export Export vault to JSON or CSV
web Launch the Web UI
$ sinduk init

# First-time setup
Enter master password: ••••••••
Confirm master password: ••••••••

✓ sinduk initialized successfully.
✓ Master password set. Run `sinduk add` to get started.

A visual interface.
Still local.

Run sinduk web to launch a full-featured web dashboard. Manage all your secrets visually without giving up local-first security.

  • Master password authentication
  • Sidebar Vault Switcher (Personal & Team Vaults)
  • Team Management Modal (invite & manage roles)
  • Real-time Audit Log Viewer
  • In-browser interactive SSH Terminal
  • Search and filter by secret type
  • Toggle secret visibility & copy to clipboard
  • Run in background with sinduk web start
localhost:58371 — sinduk
🔐 Vault: dev-infra
github-token TOKEN
prod-db-pass PASSWORD
ec2-production SSH
stripe-api-key TOKEN
admin-panel PASSWORD

One command away.

Supports Python 3.8+. Tested on Linux, macOS, and Windows.

# Install pipx (if needed)
pip install pipx
pipx ensurepath

# Install sinduk
pipx install sinduk

# Verify
sinduk version
pip install sinduk

# Then initialize
sinduk init
git clone https://github.com/imshakil/pacli.git sinduk
cd sinduk
pip install -e .

sinduk init

Your secrets,
your machine.

No subscriptions. Zero-knowledge team collaboration. Just encrypted secrets on your local machine.