Skip to main content

Glossary

The canonical vocabulary used across the ERun docs. Where two words could mean the same thing, only one is canonical here — pick that one when writing for or about ERun.

Roles

Operator — the human responsible for the work. Drives ERun via the desktop app or terminal; supervises Agents via the audit trail.

Agent — an AI assistant (Claude Code, Codex, custom MCP clients) attached to an environment via MCP.

Both are first-class. Both share every environment. An env can have an Operator and an Agent, an Operator alone, or — for unattended automation — an Agent alone.

Project scoping

Tenant — a project. One git repository.

Environment (env) — a workspace inside a tenant. Each env has its own worktree on disk, its own Kubernetes namespace, its own services. The canonical user-facing word for "a place where work happens."

Namespace — the Kubernetes primitive underneath an environment. Used only when referring to K8s internals; from the user side, say "environment."

Environment types

Agent env — an environment tuned for development. Builds happen here (snapshot tags); Operator + Agent iterate here. Comes in two flavours:

  • local-agent — worktree mounted from your local machine via hostPath. Best when the cluster runs on your laptop (Docker Desktop, OrbStack, …).
  • remote-agent — worktree cloned to a PVC in the pod. Best when the cluster doesn't share your filesystem (managed cloud).

Runtime env — an environment for serving deployed services. No worktree, no builds; receives release-tagged artefacts via erun deploy. Common names: dev, test, dr, prod.

See Environment types for the full split.

Interfaces

Desktop app — the ERun control panel. Macros, persistent terminals, IDE launchers, environment management.

Terminal / CLI — the erun command. Universal entry point; also the automation surface for CI.

MCP — Model Context Protocol. How Agents drive ERun: typed JSON-RPC tools (idle, doctor, list, version, raw) exposed on every env's runtime pod.

SSH — the IDE-attach endpoint on every env's runtime pod. VS Code Remote-SSH, IntelliJ Gateway, Cursor, Zed, JetBrains products, Neovim with remote plugins all attach here.

Three interfaces, one engine. See the anatomy diagram on the introduction.

Infrastructure

Runtime pod — one pod per env, hosting erun-devops (shell + tools + the env's MCP server) and erun-dind (docker daemon). The shared surface for Operator (SSH) and Agent (MCP). See Inside an environment.

Cloud context — a managed Kubernetes cluster ERun starts on demand and stops when idle. See Cloud contexts.

Container registry — durable store for built images. A project keeps a marked list of registries (each with build/from/to/deploy roles); the default is a single ghcr.io/sophium entry marked build + deploy. See Container registries.

Operations

Snapshot tag<semver>-snapshot-<UTC-timestamp>. Disposable; used in agent envs.

Release tag — stable <semver> from the VERSION file. Immutable; used to promote artefacts to runtime envs.

Fingerprint cache — content-derived hash that promotes a build from cache when the Dockerfile and its COPY sources haven't changed.

Deploy plan — declared in .erun/config.yaml under environments.<env>.k8s.deployments. Ordered list of components (or parallel groups) to roll out.

Workflow

Audit trail — every CLI invocation, every MCP call, every API write, recorded with the actor's identity. The mechanism by which Operators safely extend Agent autonomy over time.

Review — a unit of work-to-be-merged. Source branch, target branch, status, and references to its latest builds. See Reviews.

Merge queue — shared per target branch. FIFO; POST /v1/reviews/merge-queue/advance promotes the head to MERGED.

Non-canonical terms

These are heard in conversation but avoid them in docs:

Don't saySay instead
sandboxenvironment (env)
user, humanOperator
AI assistant, bot, copilotAgent
dev envagent env
non-local env, prod envruntime env (or just the env name)
ERun clusterKubernetes cluster