Deployment configuration for self-hosting Agenta. Each surface below deploys the same services: the web studio, the API, the workflow services, the agent runner, Postgres, Redis, and a durable object store.
docker-compose/ holds one folder per edition, oss/ and ee/. Within each edition the
Compose files split by build mode:
Each edition folder ships an env.<edition>.<mode>.example file. Copy it to a real env file
and edit it before starting the stack. docker-compose/run.sh selects the files for an
edition and mode (--oss/--ee, --dev/--gh).
kubernetes/helm/ is the Helm chart. values.yaml is the default configuration and
values.schema.json validates overrides. kubernetes/oss/ and kubernetes/ee/ hold
edition-specific values. See
Deploy on Kubernetes.
railway/oss/ deploys the OSS stack to Railway, one folder per service. railway/oss/scripts/
builds and pushes the images. See
Deploy on Railway.
Agent runs use two separate images. Do not confuse them.
- Runner service image (
services/runner/docker/) runs the runner process itself.Dockerfile.ghis the production image andDockerfile.devis the hot-reload development image. The Compose and Railway builds reference these files. - Sandbox image (
services/runner/images/sandbox/<provider>/) is the environment an agent runs inside. For Daytona,services/runner/images/sandbox/daytona/build_snapshot.pyis the snapshot build recipe. Agenta ships the recipe, not a prebuilt snapshot: run it against your own Daytona account to build a snapshot namedagenta-agent-sandbox-v2, then point the runner at it withAGENTA_RUNNER_DAYTONA_SNAPSHOT. For local runs, the runner service image is also the sandbox.
To add binaries or dependencies to agent runs, see Customize the agent runtime.
