Host
A Host is the process that currently owns a VibeX data directory and serves the remote protocol to clients. Its shape is the desktop app or vibex-server.
Identity and profile
Host identity is shown in pairing and capability negotiation. It is the key clients use to merge a Server Profile. URL, LAN IP, and tunnel hostname are reachability origins and change with the network. Identity stays. The Host console is the default Local Profile. A remote profile stores non-secret metadata and multiple reachability origins. Access credentials are protected separately.
Host console
The machine running the Host exposes the console: listen port, reachability publish, pairing invitation, device list, admin token, backup/restore, and upgrade. The console belongs to that Host process. A remote workstation uses conversations, files, Git, and plugins. Operations stay on the console.
Single occupancy
One data directory is occupied by one Host at a time. If desktop already holds it, Server attaches or waits. Host start is reserved for the occupant. If Server already holds it, this machine’s desktop attaches as a client. The automation engine, conversation append, and plugin workers therefore have one scheduler.
Native config boundary
Projects, conversations, plugin activation generations, and automations live in the data directory. Each agent’s official config stays in its own directory. The Host probes, projects, and starts official actions. The Runtime reads and writes its own files.
Host family
Desktop, the vibex-server directory (vibex-mcp, web/, official plugin snapshots), and the companion package from the same product version form a Host family. Pairing and capability negotiation align on family version. See Desktop, Server, and WebUI.

