📄 CLI REFERENCE
DOCUMENTATION
Complete guide to the Virtual Site Tool (VST) commands and options.
// The CLI surface is designed to be minimal but powerful, supporting both
interactive terminal use and headless CI integrations via `--json`.
> GLOBAL_OPTIONS
vst [GLOBAL_OPTIONS] <COMMAND>
| Option | Description | Default |
|---|---|---|
| --profile <PROFILE> | Select server profile from vst.toml |
default |
| --json | JSON output when supported by command | false |
| --quiet | Minimal output (errors only) | false |
| --verbose | Verbose debug output | false |
| --no-color | Disable ANSI colors | false |
| --timeout-seconds <N> | Override SSH timeout in seconds | profile timeout |
| --retries <N> | Retry transient remote operations | 0 |
> SETUP_AND_DIAGNOSTICS
init & setup-server
vst init
Initialize local configuration interactively.
Initialize local configuration interactively.
vst setup-server --profile default
Prepare server-side sudoers + ACL prerequisites for vst operations.
Prepare server-side sudoers + ACL prerequisites for vst operations.
vst doctor
vst doctor
Run remote diagnostics (SSH, sudo, binaries, nginx syntax, disk space).
Run remote diagnostics (SSH, sudo, binaries, nginx syntax, disk space).
| --force | Return success exit code even when critical checks fail |
> SITE_MANAGEMENT
vst add <DOMAIN>
vst add <DOMAIN>
Create a managed site and nginx config.
Create a managed site and nginx config.
| --site-type <nuxt|plain> | Required site type |
| --www / --no-www | Include or disable www mapping |
| --no-ssl | Skip certbot SSL setup |
| --preview | Enable preview behavior (robots + optional auth) |
| --auth <USER> | Create basic auth user (requires --preview) |
| --auth-output <PATH> | Export generated auth secret locally (requires --auth) |
vst deploy --domain <DOMAIN> <PATH>
vst deploy --domain <DOMAIN> <PATH>
Deploy a local build directory as a new atomic release. PATH must exist and contain
Deploy a local build directory as a new atomic release. PATH must exist and contain
index.html.
| --domain <DOMAIN> | Target site domain (required) |
| --keep <N> | Number of latest releases to keep (default: 5) |
vst rollback --domain <DOMAIN>
vst rollback --domain <DOMAIN>
Switch `current` symlink to a previous release. Interactive by default.
Switch `current` symlink to a previous release. Interactive by default.
| --to <ID> | Target numeric release ID (required for CI) |
| --dry-run | Show intended rollback without applying |
Maintenance Commands
vst releases --domain <DOMAIN>
List release history for a domain.
List release history for a domain.
vst list
List detected site directories in configured webroot.
List detected site directories in configured webroot.
vst cleanup --domain <DOMAIN>
Delete old releases while keeping the most recent ones.
Delete old releases while keeping the most recent ones.
vst remove <DOMAIN>
Remove a managed site (use
Remove a managed site (use
--purge-cert to remove
SSL).