Highdocs
Get started/Core concepts

Core concepts

High has a small object model. Learn these eight terms and every screen, command, and error message reads plainly.

The object model

Objects nest from the top down: a project owns stages; a stage runs a release, which combines a build and a config; releases land on outposts.

ProjectThe top-level unit — a name and a git URL. Owns stages, configs, and builds.
StageAn environment in a project (dev / qa / prod). The deployment target; carries placement and the current release.
BuildAn immutable, multi-arch OCI image rendered from a commit, with provenance.
ConfigA reusable, versioned set of settings — env, resources, scaling, routes, secret refs.
ReleaseBuild × resolved config × stage, rendered to a manifest and reconciled. A rollback re-applies a prior release.
OutpostAn enrolled node running the agent — a cloud cluster, a VPS, a homeserver, or a Pi.
ComponentOne workload inside a stage: a service, a job, or a cron.
PhaseA convergence state — pendingprogressingready, or degraded / failed.

Deployment phases

Every stage and component reports one of five phases. These aren't cosmetic — they are the product's information design, and they carry the same color everywhere they appear.

  • pending — queued; nothing has started converging yet.
  • progressing — rolling out; the engine is reconciling toward the desired manifest.
  • ready — converged and healthy. This is up.
  • degraded — running, but partially — some replicas or routes are unhealthy.
  • failed — rejected or down; a specific reason is attached.
degraded is not failed

degraded means the release is serving but below its target — 2 of 3 replicas ready, say. It stays serving traffic while the engine keeps trying to converge. failed means it never came up.