Skip to main content
Your AI writes gliss.yaml at the root of the repository. You rarely need to edit it yourself, but knowing its shape helps you review what your AI asked for.
gliss.yaml

The parts

  • app and owner: the app’s name, which becomes part of its addresses, and the owner’s work email.
  • components: each one is a folder with a Dockerfile that becomes a container. Give it a port if it serves web traffic.
  • capabilities: what the app needs from the platform. Each key is a name your AI chooses, and type picks the catalog entry. See the capability pages under Capabilities.
  • config: plain, non-secret settings the app reads as environment variables.
  • egress: the outside services the app may call. Everything else is blocked.
  • stages: optional per-stage overrides. See Preview, Beta and Live.

What never goes in gliss.yaml

  • Secret values. Declare the name and type under capabilities.secrets; a person sets the value through a secret request.
  • Scripts, kubectl, Helm charts or Kubernetes objects. Charts belong to the catalog. Fields such as env, helm and manifests are refused.
  • Database passwords or AWS keys. The platform creates them and hands them to the app.

When Gliss says no

If gliss.yaml asks for something your catalog does not offer, Gliss refuses it before anything is built. Every problem is listed at once, with how to fix it:
Your AI reads the refusal, fixes the file and tries again. See Refusal messages for every case, and the gliss.yaml reference for every field.