Getting started
Environment
Configure the controller before it creates workspaces.
Copy .env.example to .env for local development. The most important settings are:
| Variable | Purpose |
|---|---|
CONTROLLER_AUTH_SECRET | Enables authentication. Set a 32+ character secret before exposing the controller. |
CONTROLLER_URL | Exact browser origin, used for session cookies and CSRF protection. |
PROVISIONING_ENABLED | Enables Proxmox writes; default false. |
PROXMOX_* | Proxmox URL, token, node, pool, template, bridge, and VMID range. |
GITHUB_APP_* | GitHub App used to clone and push repository work. |
GITHUB_CLIENT_* | GitHub OAuth app used only for operator sign-in. |
WORKER_ENABLED | Runs the workspace operation worker in the controller process. |
Configure all variables in the environment reference before enabling provisioning.
Agent credentials are not environment variables. Add them in Settings → Agents.
Production
Local pnpm commands load .env when it exists. In production, provide the same configuration with
the service manager's environment file. Keep one authoritative configuration file, protect it from
non-administrators, and restart the controller after changing startup configuration.
Reaping policy and configured agents live in the database. Changes made in Settings apply without a restart.
Last updated on