CLI
The withvibe CLI installs and manages a self-hosted deployment, and sets up shared envs on your own machine.
Install
npm install -g withvibeRequires Node.js 20+. The same binary handles both installing the server stack and connecting to one as a client.
Managing a deployment
withvibe init
Install the stack on this host. Writes ~/.withvibe/.env + docker-compose.yml, generates secrets, picks free ports, pulls images, and starts everything. Add --yes for a non-interactive install with defaults.
withvibe init --yes
withvibe init --install-dir /opt/withvibe # custom location
withvibe init --no-start # write config onlyKey options: --mode <from-registry|from-source|from-bundle>, --install-dir <path>, --bundle-path <path>, --no-build, --no-start.
withvibe start / stop / restart
Lifecycle controls. start runs docker compose up -d with health gating; stop runs docker compose down (Postgres data is preserved in a named volume); restart restarts the services.
withvibe status
Service state, sidecar image presence, and the URLs the stack is reachable on.
withvibe logs [service]
Tails logs for one service (web, api, postgres) or all of them. Follows by default; --no-follow for a one-shot dump.
withvibe configure
Edit features and secrets after install — Traefik, QA browser, Google OAuth, API keys.
withvibe upgrade
Move to a new release. Backs up Postgres first (skip with --skip-backup), pulls/loads the new images, recreates containers. Migrations run automatically on API boot.
withvibe init regenerates the Postgres password and session secret and clears configured API keys — it will brick existing data. Always use withvibe upgrade to move between versions.withvibe doctor
Read-only host preflight: Docker connectivity, port availability, required env vars. Run this first when something is wrong.
withvibe uninstall
Removes the stack with a data-loss confirmation. --keep-data preserves the Postgres volume; --remove-images also deletes local images.
Connecting to a deployment (client)
withvibe login
Authorize this machine against a running withvibe server. Point at a non-default server with the global --server flag; --force re-auths even if a token already exists.
withvibe env <envId>
Set up the given env on this machine and open it in VS Code. --no-open skips the editor launch; --force skips the uncommitted-work warning.
Global flag
-s, --server <url>— withvibe web server URL (env:WITHVIBE_SERVER, defaulthttp://localhost:3000)- Management commands also accept
-d, --install-dir <path>to target a non-default install directory.