openclis-vault is the narrow credential helper for OpenCLIs and the Monolex
estate. Other tools call this stable binary as a subprocess instead of each
requesting keyring access under a changing code identity. The keyring stores a
32-byte encryption key; the credentials file stores only AES-256-GCM nonce and
ciphertext. Its surface is intentionally small: four operational commands,
one embedded-docs family, and help/version identity aliases.
Published contract: openclis-vault 0.1.6, OpenCLIs build
2026-06-30-070903. The executing binary, registry, and public CDN metadata
agree on this release.
Quick Start
Complete Command Reference
Service names accept ASCII letters, digits, hyphen, and underscore only.
Empty names, separators,
.., NUL, and other characters are rejected to block
path traversal and keyring-name injection. The logical keyring name is
com.openclis.vault.<service>.
Parser behavior
read --help,store --help, anddelete --helpare safe command-specific usage branches.list --helpinstead executeslistbecause list has no such branch.read|store|delete -- <service>bypasses help-token interpretation. The service still has to pass the normal name validator.- An unknown root prints the full guide and exits 1.
readandlisttreat an expired 30-day token as absent; the encrypted bytes are not automatically erased.
Storage Architecture
MONOLEX_DISABLE_FILE_STORAGE_FALLBACK when that fallback must be prohibited.
Losing the keyring/key file makes the old ciphertext undecryptable by design.
Copying only the ciphertext is therefore not a valid credential backup.
An unreadable ciphertext blob is treated as empty on the read path. A later
write quarantines a corrupt blob and starts a fresh encrypted record. This
preserves bytes for forensics, but it also means “not in vault” is not proof
that no stale or corrupt file exists.
Stable cdhash Contract
The stable-helper guarantee is different from package version agreement. Verify the installed binary’s version and signature before changing it, then prove that expected service names remain readable without printing their values.Published Payload Matrix
The build does not publish macOS Intel or Windows ARM64 artifacts. The
installed macOS payload is Developer ID signed; signature validity and payload
version are separate from credential readability.
Safe Patterns
set -x) around reads and stores. list proves only
that an unexpired token was readable at that moment; only the consuming tool’s
authenticated status/doctor command proves remote validity.