Envman 0.1.10 · Linux x86_64

Persistent variables, without the startup-file sprawl.

Envman keeps a validated set of per-user environment variables in one managed location. Inspect and edit them in the terminal UI, or use the CLI for repeatable commands and JSON output.

Envman terminal catalog showing a project path, service URL, masked API token, focused-row details, and keyboard controls
Sample data only. Sensitive values remain masked in ordinary output.

One managed set. Two useful interfaces.

The TUI and CLI work on the same store and apply the same validation, masking, and persistence rules.

Terminal UI for deliberate edits

Browse the complete catalog, focus a value, select several variables, and preview imports before saving. The layout uses the available terminal height and keeps its controls visible at 80 by 18 characters.

Learn the terminal controls →

CLI for scripts and automation

Use list, get, set, rename, validate, and import commands. Add --json where supported for stable machine-readable results.

Read the CLI reference →

The storage boundary stays explicit.

Envman encrypts the managed configuration after its first save and keeps the storage key in a separate private state file. Encrypted exports use an independent backup credential.

Understand storage and shell loading →

  • Masked outputValues classified as sensitive by their names, plus password-bearing URLs, are masked unless a trusted caller explicitly requests --reveal.
  • Preview before importProcess and backup imports show their proposed changes before --apply writes anything.
  • Separate backup keyENVMAN_BACKUP_KEY or an approved private fallback protects encrypted backup files.
  • Verified releasesThe installer checks immutable asset URLs, sizes, hashes, wheel metadata, runtime constraints, and host compatibility.

Install the verified release.

Envman 0.1.10 supports Linux x86_64, CPython 3.12, and uv >=0.11.

Installation details
uv run --python 3.12 --script \
  https://github.com/CruxExperts/envman/releases/latest/download/install.py

# Add uv's tool bin directory to this shell, then open Envman:
export PATH="$(uv tool dir --bin):$PATH"
envman

Go straight to the useful page.

Start with the task in front of you. Protocol and architecture details are there when you need to inspect the boundary.