Skip to main content
The CLI and the HTTP API are the control plane; an agent can use either. The dashboard is the window into live state. Config lives in the repo, so the surfaces cannot drift.

Use the CLI and repo for app shape

Use repo-backed config and the CLI or API for what defines the app:
  • app and service definitions
  • routing
  • build and runtime settings
  • managed Postgres, Redis, and Storage declarations
  • managed credential attachments
  • rollout observation
Desired state stays reviewable in git and deterministic for agents.

Use the dashboard for live operational visibility

The dashboard is a readable view into the live system:
  • releases and deploy history
  • logs and usage
  • team and access state
  • billing and operational settings
It suits teammates who do not work from a shell.

Why this split matters

If the dashboard silently mutated config the repo also declares, agents could not tell which state was real. Repo-backed config stays authoritative; the dashboard shows the resulting live system.

What stays outside repo-backed config on purpose

Secrets, access grants, billing, stored data, and terminal destructive actions are operational or live-data by nature, so they never enter the repo. Git as source of truth has the full list and the reasoning.
  • agents and power users operate from the CLI or the HTTP API
  • config changes are reviewed in git
  • the rest of the team uses the dashboard for visibility
The team keeps one control plane without forcing everyone into a shell.

Config as Code

See the repo-as-control-plane model in more detail.

Agent setup

Set up an agent on the CLI or the HTTP API and parse its output.