View on GitHub
v0.2.0 • Open Source

ManUp CLI

Manage, synchronize, and inject environment secrets seamlessly across your projects and automation pipelines.

$ npm install -g manup-cli

⚡ Quickstart

Get started with ManUp CLI in 3 easy steps:

bash
# 1. Install globally
$ npm install -g manup-cli

# 2. Authenticate with your ManUp Vault Server
$ manup login --server http://localhost:7780 --api-key mp_your_key

# 3. Inject vault secrets directly into your application command
$ manup run -- npm start

📦 Installation

You can install manup-cli globally via npm, pnpm, or yarn:

terminal
npm install -g manup-cli

Or run any command statelessly with npx:

terminal
npx manup-cli whoami

🔑 Authentication (manup login)

Authenticate your local environment with your self-hosted ManUp server instance securely.

Interactive Dual Login

Choose between direct Email/Username & Password login (which auto-generates a dedicated CLI API Key) or an existing API Key (mp_...):

terminal
manup login

Non-Interactive Login & Automation

Log in directly with flags or authenticate statelessly in CI/CD pipelines:

terminal
# Direct login with credentials flags
manup login --server http://localhost:7780 --user dev@example.com --password mypass

# Non-interactive API key login
manup login --server http://localhost:7780 --api-key mp_your_api_key

🔒 Machine-Bound AES Encryption

Credentials stored on disk are encrypted using AES-256-CBC derived from your local machine identity (scrypt hash) with strict POSIX permissions (0600), keeping tokens safe from local process theft.

👤 Status Check (manup whoami)

Displays active server URL, logged-in user email, organization ID, and linked directory details.

terminal
manup whoami

🔗 Workspace Linking (manup init)

Links your current directory to a specific project and environment in your ManUp vault by creating a local .manup.json file.

terminal
manup init

🔐 Secret Operations (manup secrets)

Full CRUD operations for managing decrypted environment variables in your vault.

List Secrets

terminal
# List masked secrets
manup secrets

# Reveal plain secret values
manup secrets ls --reveal

Set Secret

terminal
manup secrets set DATABASE_URL postgres://user:pass@localhost:5432/db

Get Secret

terminal
manup secrets get DATABASE_URL

Delete Secret

terminal
manup secrets delete DATABASE_URL

📄 Exporting Secrets

Export environment variables to .env files or standard export scripts.

terminal
# Write secrets to .env file
manup secrets export --out .env

# Output JSON format
manup secrets export --format json

🚀 Running Commands (manup run)

Injects decrypted vault secrets directly into the child process environment variables at runtime without saving them to disk.

terminal
# Inject secrets into Node.js application
manup run -- node server.js

# Inject secrets into npm dev server
manup run -- npm run dev

⚡ Powered by ManUp Vault Server

This CLI connects to your self-hosted ManUp Secrets Vault Server. ManUp is a lightweight, open-source secrets management platform built with Node.js, Express, TypeScript, and PGLite PostgreSQL.

👉 View the main repository: https://github.com/Amanbig/ManUp