Voltro Cloud

Voltro Cloud (coming soon) — the managed runtime for your Voltro project. Today the Free control plane registers + observes your self-hosted apps.

Voltro Cloud is the managed tier of the same open-core runtime you run locally. It's not a fork — voltro start is what powers your production instances, just with custom domains, multi-region routing, provisioned Postgres / Redis / object storage, and a control plane that handles deploys.

Status: managed cloud deploy + provisioning is coming soon and is not yet available. What's live today is the Free control plane: sign up and use it to register and observe your self-hosted apps (hosted observability, quotas, governance, teams). The managed-tier features described below are the planned shape of Voltro Cloud — see the per-section notes.

When to use Cloud vs self-host

Cloud (coming soon) Self-host (today)
Managed Postgres + Redis + pgvector You provision
Multi-region + edge routing You set up Caddy / Cloudflare / your CDN
Custom domains + automatic SSL You manage certs
AI provider gateway (key rotation, fallback) You wire AI_PROVIDER directly
Per-tenant vanity domains ✓ (Enterprise) Possible but you build the routing
Observability (logs, traces, metrics) You wire OpenTelemetry to your sink
Audit log retention ≥ 90 days Whatever you configure
You own the data ✓ — export anytime
You own the source code

Pre-release: the Free tier is live — sign up (passwordless, an email one-time code) and use the control plane to register + observe your self-hosted apps. Managed cloud deploy + provisioning is coming soon (voltro cloud deploy prints control-plane deploy pipeline pending — not yet available until it ships); paid tiers open with it at launch.

The voltro cloud client

The control-plane client is voltro cloud, not a top-level voltro deploy. It authenticates against the control plane (base url via VOLTRO_CLOUD_URL) and manages projects + env vars:

voltro cloud login [--token <t>]          # store a session token in ~/.voltro/credentials.json
voltro cloud whoami                       # the current account
voltro cloud projects                     # list your projects
voltro cloud env list [--project P]       # list a project's env vars
voltro cloud env set <KEY> <VALUE> [--project P]
voltro cloud env pull [--project P]       # write .env.cloud from the project's env
voltro cloud import                       # scaffold voltro.cloud.toml from app.config.ts

Scaffolding the deploy config — voltro cloud import

voltro cloud import reads the app's app.config.ts (name + type) and writes a voltro.cloud.toml next to it. It refuses to overwrite an existing file. The generated shape:

# voltro.cloud.toml — generated by `voltro cloud import`.
# Describes how this app deploys to the framework cloud control-plane.

[project]
name = "acme"
type = "api"

[deploy]
# Target region + replica count. Tune before `voltro cloud deploy`.
region = "auto"
replicas = 1

[env]
# Project env-var names resolved from the control-plane at deploy time.
# Use `voltro cloud env set <KEY> <VALUE>` to populate them.

Deploy is pending

voltro cloud deploy exists but the control-plane deploy pipeline is not yet available — running it prints control-plane deploy pipeline pending — not yet available. Build, upload, migrate, traffic-shifting, and one-click rollback are the planned shape of that pipeline; until it lands, use the voltro cloud env + project commands above to prepare a project.

Environments

Per-project environments (preview / staging / production), each with its own env vars + DB + storage bucket, are part of the planned control-plane surface. Manage env vars today with voltro cloud env list/set/pull.

Custom domains

Coming soon with managed cloud hosting — not yet available. When it ships, you'll add a domain in the Cloud UI and the platform handles:

  • DNS verification (TXT record)
  • ACME-issued SSL (Let's Encrypt or Google Trust Services)
  • Auto-renewal
  • Per-tenant vanity domains (Enterprise) — tenant1.your-product.com routes to the right tenant scope automatically

Observability

Available today for your registered self-hosted apps (this is the live Free-tier control plane). OpenTelemetry-native:

  • Logs flow to the project's log stream (search + filter in-UI; export to Datadog / Loki / etc.)
  • Traces for every mutation, query, workflow, agent run
  • Metrics for request rates, error rates, p50/p95/p99 latencies, AI token spend per tenant

Provisioning

Coming soon with managed cloud hosting — not yet available. When it ships, Cloud will provision managed Postgres, Redis, R2, Resend, etc. on your behalf. You'll also be able to BYO (point at your own Neon, Upstash, etc. via env vars) — billing for those goes through your account with the provider. Today you provision these yourself and self-host.

See the Cloud Premium Matrix for the full feature breakdown.

Migration from self-hosted to Cloud

Deploying onto Cloud is coming soon — not yet available. You can prepare a project today (scaffold the config, populate env), but there is no managed destination to deploy to yet.

voltro cloud import   # scaffold voltro.cloud.toml from the app's app.config.ts

voltro cloud import reads the app's app.config.ts and writes a voltro.cloud.toml (project name + type + a deploy/env skeleton). Populate the project env with voltro cloud env set. When managed hosting ships, your local Postgres data won't be migrated for you — you'll use pg_dump + pg_restore against the target database directly.