Verentis

Documentation

Pack & publish

Scaffold a project, build a signed (and optionally sealed) .vpkg, and publish it to the marketplace.

Scaffold a project

verentis init my-app --kind application       # application | engine | bundle

--name overrides the package name (defaults to the directory name).

Pack

verentis pack builds a signed .vpkg from your project directory:

verentis pack                                 # signed .vpkg in the project directory
verentis pack ./my-app --out ./dist
verentis pack --env production                # merge environments/production.yaml
verentis pack --overlay ./release.yaml        # merge an explicit overlay
verentis pack --set-version 1.2.3             # override only the packed version
verentis pack --bump-version                  # increment metadata.version.patch in the manifest
verentis pack --encrypt                        # seal the payload (AES-256-GCM)
[dir]

Project directory (default: current directory).

--manifest <path>

Manifest path (default: auto-detected in the project directory).

--publisher <name>

Publisher name (default: packaging.publisher in the manifest).

--name <name>

Override the package name.

--env <name>

Merge environments/<name>.yaml onto the base manifest. The environment name is included in the output filename.

--overlay <path>

Merge an explicit overlay file. When both are supplied, --overlay wins over --env.

--set-version <version>

Override metadata.version in the packed manifest without editing the source file.

--bump-version / --bump

Increment the authored metadata.version patch component and update the source manifest. Cannot be combined with --set-version.

--out <dir>

Output directory (default: the project directory).

--key <name>

Signing key name (default: the configured default key).

--no-sign

Produce an unsigned package.

--encrypt

Seal the payload (AES-256-GCM); requires at least one recipient.

--recipient <id=base64key...>

Additional X25519 recipient. Repeatable.

Encryption requires a recipient

--encrypt seals the payload with AES-256-GCM and X25519 key-wrapping. The CLI adds the platform recipient when a sealing public key is configured by verentis login --sealing-key or VERENTIS_SEALING_KEY; otherwise pass at least one --recipient id=base64key.

Verify locally

verentis verify my-app-0.1.0.vpkg           # inspect + verify a package
verentis verify my-app-0.1.0.vpkg --key release
verentis seal-keygen                        # generate an X25519 sealing key pair

Publish

verentis publish my-app-0.1.0.vpkg                         # Private by default
verentis publish my-app-0.1.0.vpkg --visibility Public

Published versions are Submitted for moderation; once approved the marketplace countersigns them and they become installable.

Validate first

Run verentis validate on your manifest before packing to catch problems early.