docs / server
Run the server anywhere
The desktop app embeds the VibeTree server. You can also run the same server standalone on a VM, a home server, or a spare machine, and use VibeTree from any browser or phone.
Standalone server
# on the machine that has your repositories
$ git clone https://github.com/sahithvibudhi/vibe-tree && cd vibe-tree
$ pnpm install && pnpm build
$ pnpm start:server
The server starts on port 3002, serves the web app, and prints local and network URLs plus a QR code for pairing. Open the URL from any device on the network.
Enable auth
The server is open by default, which is fine on localhost. If you bind it to a network, turn auth on:
$ AUTH_REQUIRED=true \
VIBETREE_USERNAME=you \
VIBETREE_PASSWORD=a-strong-password \
pnpm start:server
The web app then shows a login page, and API and terminal traffic require a token. The CLI passes it with --token or $VIBETREE_TOKEN.
Phone
Open the server URL on your phone and install the web app when the browser offers it; it is a full PWA. Scan the QR code the server prints to skip typing the address. Terminals, agent states, and diffs all work from the phone, and sessions keep running when you lock the screen.
Remote access
For access from outside your network, put the server behind something you already trust: Tailscale is the simplest (the server URL just works inside your tailnet), or a reverse proxy with TLS if you have one. Keep auth enabled for anything reachable beyond localhost.
Sessions
Terminal sessions live in the server, not in any window. Browsers can disconnect and reconnect freely; scrollback replays on reattach. Idle sessions are cleaned up after 24 hours by default, configurable with SESSION_IDLE_TIMEOUT_MS.