Skip to content

Local-first and agentless

vops keeps the authority to operate infrastructure on the user’s machine. That is more than an installation detail: it defines where credentials live, where plans are approved and where operational history belongs.

The workstation is the control plane

Local state lives under ~/.config/vops/ by default. It includes provider configuration, the host inventory, cached provider data, plans and operational records. SSH private keys remain local; importing an existing key records its path rather than copying the private material.

The local dashboard follows the same boundary. vops ui starts a service bound to 127.0.0.1, protects the browser session with a one-time token and uses assets bundled with the CLI rather than a CDN.

vops does not require a vops account and does not send operational telemetry, prompts, infrastructure metadata or credentials to a vops service.

What reaches a managed server

Host and application operations use SSH. vops may place the artifacts required by the requested job, including:

  • application containers and service definitions;
  • configuration and secret files with restrictive permissions;
  • firewall or ingress configuration;
  • health-check and backup scripts;
  • narrowly scoped scheduled tasks chosen by the user.

It does not install a permanent vops controller, database, scheduler or management cluster on the server. The application consumes the server’s resources; vops does not reserve a platform runtime.

The explicit hosted exception

vops watch can relay notifications while the workstation is asleep. That feature is opt-in because an outside service is required to probe a public URL or send a notification to a phone. Connecting the relay is an explicit vops watch login step.

The rest of the product does not silently turn that connection into a remote control plane.

Why this boundary matters

Local ownership narrows the blast radius:

  • a provider token does not need to cross a hosted vops service;
  • revoking or locking the local keyring removes the active credential path;
  • an agent session can receive scoped operations without receiving the secret that powers them;
  • removing vops does not strand a management runtime on every VPS.

It also creates a practical limitation: cloud-hosted development agents cannot reach a loopback-only MCP endpoint unless the user deliberately creates a bridge. The local MVP does not create an internet-facing bridge automatically.