Guide

Deployment

Choose the right deployment shape for desktop, node, Cloudflare, or CLI usage.

Provon Deployment

Provon uses the same domain, API, storage, and Workspace modules across multiple entrypoints. You can start locally on a laptop, run a self-hosted Provon Node server, split surfaces across Cloudflare Workers, or connect external supply nodes through provond.

Deployment Shapes

ShapeEntrypointBest forStorage and runtime
DesktopdesktopSingle Workspace on a developer machineElectron + shared Node runtime, libSQL/SQLite, DuckDB, filesystem blob storage
Self-hosted Provon Nodeservices/node-serverVM, Docker, bare metal, private cloudHono Node server, libSQL/SQLite metadata, DuckDB telemetry, SQLite-backed queues
Cloudflare Edgeservices/cloudflare-workerEdge API, Workspace, Gateway, OTel, Supply, and background jobsWorkers, D1 metadata, R2 blobs, Queues, R2 SQL/Data Catalog, Iceberg telemetry
Supply nodeprovondRegistering and forwarding external OpenAI-compatible endpointsEndpoint registry, probing, manifest generation, tunnel forwarding
CLIcliCommand-line automation around the APIAPI client and shared core primitives

Choosing A Shape

Desktop

Use the desktop shape when you want a local Workspace for development, experiments, or single-user agent review. It keeps the product close to your machine while reusing the shared Node runtime.

Best fit:

  • Local exploration of Gateway, traces, Playground, and workflows.
  • Developer machines that need filesystem-backed blobs and local DuckDB telemetry.
  • Trying local/private model providers without committing to server infrastructure.

Self-Hosted Provon Node

Use the Node server when you want the simplest server deployment for a team or private environment. It serves the API and Workspace from one Node process and uses injected storage/runtime adapters.

Best fit:

  • VM, Docker, bare metal, or private cloud deployments.
  • Teams that want SQLite/libSQL metadata with DuckDB telemetry.
  • A single HTTP surface for API, Workspace, Gateway, and OTLP during self-hosted Provon operation.

Cloudflare Edge

Use the Cloudflare shape when you want split edge surfaces and managed platform primitives. The Cloudflare entrypoint separates API, Workspace, Gateway, OTel, Supply, and jobs surfaces so hot paths can be deployed independently.

Best fit:

  • Edge-hosted API, Gateway, and Workspace workloads.
  • D1 metadata, R2 blob storage, Cloudflare Queues, and Durable Objects.
  • Cloudflare R2 SQL reads with R2 Data Catalog / Iceberg-backed telemetry writes.
  • Deployments where Gateway and telemetry ingest should scale separately from the Workspace UI.

Supply Node

Use provond when you want to expose external OpenAI-compatible endpoints to Provon without embedding them directly into the control plane. A supply node registers endpoints, probes health, submits manifests, and forwards requests over the supply tunnel.

Best fit:

  • Local or remote model servers managed outside the main Provon runtime.
  • Endpoint probing and manifest submission.
  • Supplying external OpenAI-compatible backends through a signed node identity and short-lived

tunnel lease.

CLI

Use the CLI shape for automation around the API. It is not a runtime surface by itself; it is a command-line companion for scripting and operational workflows.

Storage Model

Provon separates metadata from telemetry so production agent evidence can grow independently from workspace state.

StorePurposeTypical engines
MetadataUsers, sessions, API keys, organizations, projects, memberships, workflows, settingslibSQL/SQLite for Node, D1 for Workers
TelemetryOpenTelemetry spans, logs, metrics, trace summaries, usage, dashboards, retention dataNode/local: DuckDB; Workers: R2 Data Catalog / Iceberg and R2 SQL
BlobsTrace attachments, OTLP staging payloads, exported artifacts, local or cloud blob bodiesFilesystem, R2, S3-compatible providers

Local Start

For the default local Node development stack:

pnpm install
pnpm dev

The Workspace runs at http://127.0.0.1:3000 by default.

For detailed development and Cloudflare deployment commands, see CONTRIBUTING.md.

For the current telemetry write, read, search, summary, and retention mechanisms, see Telemetry.